Method Groups for Class Interface

The methods in this class are grouped below.

(Links go to the Interface Class Reference page.)

Animation / Time / Playback Related Methods
Interface::GetTime()=0
Interface::SetTime(TimeValue t, BOOL redraw=TRUE)=0
Interface::GetAnimRange()=0
Interface::SetAnimRange(Interval range)=0
Interface::StartAnimPlayback(int selOnly=FALSE)=0
Interface::EndAnimPlayback()=0
Interface::IsAnimPlaying()=0
Interface::EnableAnimateButton(BOOL enable)=0
Interface::IsAnimateEnabled()=0
Interface::SetAnimateButtonState(BOOL onOff)=0
Interface::GetRealTimePlayback()=0
Interface::SetRealTimePlayback(BOOL realTime)=0
Interface::GetPlayActiveOnly()=0
Interface::SetPlayActiveOnly(BOOL playActive)=0
Interface::BeginProgressiveMode() =0
Interface::EndProgressiveMode() =0
Interface::InProgressiveMode() =0
Auto Backup Time Related Methods
Interface::GetAutoBackupTime()=0
Interface::SetAutoBackupTime(float minutes)=0
Interface::AutoBackupEnabled()=0
Interface::EnableAutoBackup(BOOL onOff)=0
Action Table and Menu Manager Methods
Interface::GetActionManager()=0
Interface::GetMenuManager()=0
Axis System Related Methods
Interface::GetTransformAxis(INode *node,int subIndex,BOOL* local = NULL)=0
Interface::GetNumAxis()=0
Interface::GetTransformAxis(INode *node, int subIndex, BOOL* local = NULL)=0
Interface::LockAxisTripods(BOOL onOff)=0
Interface::AxisTripodLocked()=0
Bitmap / Texmap Related Methods
Interface::FreeSceneBitmaps()=0
Interface::EnumAuxFiles(AssetEnumCallback& nameEnum, DWORD flags)=0
Interface::RenderTexmap(Texmap *tex, Bitmap *bm, float scale3d=1.0f, BOOL filter=FALSE, BOOL display=FALSE, float z=0.0f, TimeValue t=GetCoreInterface()->GetTime())=0
Interface::CanImportBitmap(const MCHAR *filename)=0
Interface::CaptureSubObjectRegistration(bool OnOff, Class_ID cid)=0
Interface::DownloadUrl(HWND hwnd, const TCHAR* url, const TCHAR* filename, DWORD flags = 0)=0
Interface::GetImportCtxNode(void)=0
Callback / Notification Registration
Related to callbacks is Structure NotifyInfo and its associated functions. Please see this topic for additional ways a developer can register a callback for events like the user performing a File/Reset or File/New, the system unit settings changing, etc.
Interface::RegisterTimeChangeCallback(TimeChangeCallback *tc)=0
Interface::UnRegisterTimeChangeCallback(TimeChangeCallback *tc)=0
Interface::RegisterCommandModeChangedCallback(CommandModeChangedCallback *cb)=0
Interface::UnRegisterCommandModeChangedCallback(CommandModeChangedCallback *cb)=0
Interface::RegisterViewportDisplayCallback(BOOL preScene, ViewportDisplayCallback *cb)=0
Interface::UnRegisterViewportDisplayCallback(BOOL preScene, ViewportDisplayCallback *cb)=0
Interface::NotifyViewportDisplayCallbackChanged(BOOL preScene, ViewportDisplayCallback *cb)=0
Interface::RegisterExitMAXCallback(ExitMAXCallback *cb)=0
Interface::UnRegisterExitMAXCallback(ExitMAXCallback *cb)=0
Interface::RegisterAxisChangeCallback(AxisChangeCallback *cb)=0
Interface::UnRegisterAxisChangeCallback(AxisChangeCallback *cb)=0
Interface::RegisterRedrawViewsCallback(RedrawViewsCallback *cb)=0
Interface::UnRegisterRedrawViewsCallback(RedrawViewsCallback *cb)=0
Interface::RegisterSelectFilterCallback(SelectFilterCallback *cb)=0
Interface::UnRegisterSelectFilterCallback(SelectFilterCallback *cb)=0
Interface::RegisterDisplayFilterCallback(DisplayFilterCallback *cb)=0
Interface::UnRegisterDisplayFilterCallback(DisplayFilterCallback *cb)=0 Interface::GetCurPickMode()=0
Creation Related Methods
Interface::CreateObjectNode( Object *obj )=0
Interface::CreateInstance(SClass_ID superID, Class_ID classID)=0
Interface::NonMouseCreate(Matrix3 tm)=0
Interface::NonMouseCreateFinish(Matrix3 tm)=0
Interface::StopCreating()=0
Interface::BindToTarget(INode *laNode, INode *targNode)=0
Command Modes
For more information on CommandModes, see the Advanced Topics section Command Modes and Mouse Procs.
Interface::PushCommandMode(CommandMode *m)=0
Interface::SetCommandMode(CommandMode *m)=0
Interface::PopCommandMode()=0
Interface::GetCommandMode()=0
Interface::GetCommandStackSize()
Interface::GetCommandStackEntry(int entry)
Interface::SetStdCommandMode(int cid)=0
Interface::PushStdCommandMode(int cid)=0
Interface::RemoveMode(CommandMode *m)=0
Interface::DeleteMode(CommandMode *m)=0
Command Panel and Rollup Page methods
Interface::AddRollupPage(HINSTANCE hInst, TCHAR *dlgTemplate, DLGPROC dlgProc, TCHAR *title, LPARAM param=0, DWORD flags=0, int category = ROLLUP_CAT_STANDARD)=0
Interface::AddRollupPage(HINSTANCE hInst, DLGTEMPLATE *dlgTemplate, DLGPROC dlgProc, TCHAR *title, LPARAM param=0, DWORD flags=0, int category = ROLLUP_CAT_STANDARD)=0
Interface::DeleteRollupPage(HWND hRollup)=0
Interface::ReplaceRollupPage(HWND hOldRollup, HINSTANCE hInst, TCHAR *dlgTemplate, DLGPROC dlgProc, TCHAR *title, LPARAM param=0,DWORD flags=0, int category = ROLLUP_CAT_STANDARD)=0
Interface::ReplaceRollupPage(HWND hOldRollup, HINSTANCE hInst, TCHAR *dlgTemplate, DLGPROC dlgProc, TCHAR *title, LPARAM param=0,DWORD flags=0, int category = ROLLUP_CAT_STANDARD)=0
Interface::GetCommandPanelRollup()=0
Interface::RollupMouseMessage(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam )=0
Interface::GetCommandPanelTaskMode()=0
Interface::SetCommandPanelTaskMode(int mode)=0
Delete Key Notification
Interface::RegisterDeleteUser(EventUser *user)=0
Interface::UnRegisterDeleteUser(EventUser *user)=0
Dialogs -- Methods to Display MAX dialogs
This section describes methods to put up many of the standard dialog boxes used by MAX. Some dialogs are accessed outside of this class. For the Arc Rotate dialog box see Class ArcballDialog. For the modal or modeless color selector dialog see Class ColorPicker. For a Win32 MessageBox() like function that supports 'Hold' and 'Don't show this dialog again' items see List of Miscellaneous Utility Functions.
Interface::PutMtlToMtlEditor(MtlBase *mb , int slot=-1)=0
Interface::TrackViewPickDlg(HWND hParent, TrackViewPick *res, TrackViewFilter *filter=NULL, DWORD flags=0)=0
Interface::TrackViewPickMultiDlg(HWND hParent, Tab<TrackViewPick> *res, TrackViewFilter *filter=NULL,DWORD flags=0)=0
Interface::DoExclusionListDialog(ExclList *nl, BOOL doShadows=TRUE)=0
Interface::ConvertNameTabToExclList(const NameTab *nt, ExclList *excList)=0
Interface::DoMaterialBrowseDlg(HWND hParent,DWORD flags,BOOL &newMat,BOOL &cancel)=0
Interface::DoHitByNameDialog(HitByNameDlgCallback *hbncb=NULL)=0
Interface::NodeColorPicker(HWND hWnd,DWORD &col)=0
Interface::ChooseDirectory(HWND hWnd, TCHAR *title, TCHAR *dir, TCHAR *desc=NULL)=0
Interface::ConfigureBitmapPaths()=0
Interface::DoSpaceArrayDialog(SpaceArrayCallback *sacb=NULL)=0
RAM Player
Interface::RAMPlayer(HWND hWndParent, TCHAR* szChanA=NULL, TCHAR* szChanB=NULL)=0
Dialogs -- Register Windows
Interface::RegisterDlgWnd(HWND hDlg)=0
Interface::UnRegisterDlgWnd(HWND hDlg)=0
Directory Access -- Plug-In and Bitmap Paths
Interface::GetDir(int which)=0
Interface::GetPlugInEntryCount()=0
Interface::GetPlugInDesc(int i)=0
Interface::GetPlugInDir(int i)=0
DLL Directory Access
Interface::GetDllDir()=0
Interface::GetDllDirectory()=0
Error Logging
The following methods allow a developer to write to the error log file created in each network server's directory. These three methods allow more detailed information to be recorded than the single line error message that is returned to the network "master" when a render fails. If there is any place in your code where an Alert is put up that might be encountered during rendering, you can print the information out to the error log instead.
Interface::Log()=0
Environment Access (Ambient/Atmosphere/Background Access)
Interface::GetEnvironmentMap()=0
Interface::SetEnvironmentMap(Texmap *map)=0
Interface::GetUseEnvironmentMap()=0
Interface::SetUseEnvironmentMap(BOOL onOff)=0
Interface::GetAmbient(TimeValue t,Interval &valid)=0
Interface::SetAmbient(TimeValue t, Point3 col)=0
Interface::GetAmbientController()=0
Interface::SetAmbientController(Control *c)=0
Interface::GetLightTint(TimeValue t,Interval &valid)=0
Interface::SetLightTint(TimeValue t, Point3 col)=0
Interface::GetLightTintController()=0
Interface::SetLightTintController(Control *c)=0
Interface::GetLightLevel(TimeValue t,Interval &valid)=0
Interface::SetLightLevel(TimeValue t, float lev)=0
Interface::GetLightLevelController()=0
Interface::SetLightLevelController(Control *c)=0
Interface::NumAtmospheric()=0
Interface::GetAtmospheric(int i)=0
Interface::SetAtmospheric(int i,Atmospheric *a)=0
Interface::AddAtmosphere(Atmospheric *atmos)=0
Interface::DeleteAtmosphere(int i)=0
Interface::EditAtmosphere(Atmospheric *a, INode *gizmo=NULL)=0
Render Effects Methods
Interface::NumEffects()=0
Interface::GetEffect(int i)=0
Interface::SetEffect(int i, Effect *e)=0
Interface::AddEffect(Effect *eff)=0
Interface::DeleteEffect(int i)=0
Interface::EditEffect(Effect *e, INode *gizmo=NULL)=0
Interface::GetBackGround(TimeValue t,Interval &valid)=0
Interface::SetBackGround(TimeValue t,Point3 col)=0
Interface::GetBackGroundController()=0
Interface::SetBackGroundController(Control *c)=0
Execute MAX Commands
Interface::ExecuteMAXCommand(int id)=0
Execute -- General API Expansion Function
Interface::Execute(int cmd, ULONG_PTR arg1=0, ULONG_PTR arg2=0, ULONG_PTR arg3=0, ULONG_PTR arg4=0, ULONG_PTR arg5=0, ULONG_PTR arg6=0)=0
Extended Display Modes
Interface::SetExtendedDisplayMode(int flags)=0
Interface::GetExtendedDisplayMode()=0
Filenames and Pathnames
Interface::GetCurFileName()=0
Interface::GetCurFilePath()=0
Interface::GetMatLibFileName()=0
File Open/Merge/Save/Reset/Hold/Fetch Methods
For file IO using the MAX import / export mechanism see the section: Import / Export Related Methods.
Interface::IsMaxFile(const MCHAR* filename)=0
Interface::IsInternetCachedFile(const MCHAR* filename)=0
Interface::SetMAXFileOpenDlg(MAXFileOpenDialog* dlg)=0
Interface::SetMAXFileSaveDlg(MAXFileSaveDialog* dlg)=0
Interface::FileOpenMatLib(HWND hWnd)=0
Interface::FileSaveMatLib(HWND hWnd)=0
Interface::FileSaveAsMatLib(HWND hWnd)=0
Interface::LoadDefaultMatLib()=0
Interface::LoadFromFile(const TCHAR *name, BOOL refresh=TRUE)=0
Interface::SaveToFile(const MCHAR *fname, BOOL clearNeedSaveFlag=TRUE, BOOL useNewFile=TRUE)=0
Interface::FileSaveSelected(MCHAR *fname)=0
Interface::FileSaveNodes(INodeTab* nodes, MCHAR *fname)=0
Interface::LoadMaterialLib(const TCHAR *name, MtlBaseLib *lib=NULL)=0
Interface::SaveMaterialLib(const TCHAR *name, MtlBaseLib *lib=NULL)=0
Interface::MergeFromFile(const TCHAR *name, BOOL mergeAll=FALSE, BOOL selMerged=FALSE, BOOL refresh=TRUE, int dupAction = MERGE_DUPS_PROMPT, NameTab* mrgList=NULL)=0
Interface::FileOpen()=0
Interface::FileSave()=0
Interface::CheckForSave()=0
Interface::FileSaveAs()=0
Interface::FileSaveSelected()=0
Interface::FileReset(BOOL noPrompt=FALSE)=0
Interface::FileMerge()=0
Interface::FileHold()=0
Interface::FileFetch()=0
File Import / Export Related Methods
Interface::FileImport()=0
Interface::FileExport()=0
Interface::ImportFromFile(const TCHAR *name, BOOL suppressPrompts=FALSE, Class_ID *importerID=NULL)=0
Interface::ExportToFile(const TCHAR *name, BOOL suppressPrompts=FALSE, DWORD options, Class_ID *exporterID=NULL)=0
Interface::CanImportFile(const MCHAR* filename)=0
Interface::GetImportZoomExtents()=0
Interface::SetImportZoomExtents(BOOL onOff)=0
Fonts / Cursor Related Methods
Interface::GetAppHFont()=0
Interface::GetSysCursor( int id )=0
Interface::SetCrossHairCur(BOOL onOff)=0
Interface::GetCrossHairCur()=0
Grid Related Methods
Interface::GetGridSpacing()=0
Interface::GetGridMajorLines()=0
Interface::SetActiveGrid(INode *node)=0
Interface::GetActiveGrid()=0
Interface::AddGridToScene(INode *node)=0
Hide By Category Flags
Interface::GetHideByCategoryFlags()=0
Interface::SetHideByCategoryFlags(DWORD f)=0
Keyboard Accelerators
See the Advanced Topics section Keyboard Accelerators and Dialog Messages for more details.
Interface::RegisterAccelTable(HWND hWnd, HACCEL hAccel)=0
Interface::UnRegisterAccelTable(HWND hWnd, HACCEL hAccel)=0
Light Related Methods
Interface::GetLightConeConstraint()=0
Interface::AddLightToScene(INode *node)=0
Interface::AddSFXRollupPage(ULONG flags=0)=0
Interface::DeleteSFXRollupPage()=0
Interface::RefreshSFXRollupPage()=0
Material Related Methods
Interface::GetMaterialLibrary()=0
Interface::GetSceneMtls()
Interface::GetMtlSlot(int slot)
Interface::OkMtlForScene(MtlBase *m)=0
Interface::AssignNewName(Mtl *m)=0
Interface::AssignNewName(Texmap *m)=0
Interface::ActivateTexture(Texmap *tx, Mtl *mtl, int subNum=-1)
Interface::DeActivateTexture(Texmap *tx, Mtl *mtl, int subNum=-1)
Interface::UpdateMtlEditorBrackets()=0
Interface::ConvertMtl(TimeValue t, Material &gm, Mtl *mtl, BOOL doTex, int subNum, float vis, BOOL &needDecal, INode *node, BitArray *needTex, GraphicsWindow *gw)=0
Modifier Related Methods
Interface::GetModContexts(ModContextList& list, INodeTab& nodes)=0
Interface::GetCurEditObject()=0
Node Grouping
Interface::GroupNodes(INodeTab *nodes=NULL,TSTR *name=NULL,BOOL selGroup=TRUE)=0
Interface::UngroupNodes(INodeTab *nodes=NULL)=0
Interface::ExplodeNodes(INodeTab *nodes=NULL)=0
Interface::OpenGroup(INodeTab *nodes=NULL,BOOL clearSel=TRUE)=0
Interface::CloseGroup(INodeTab *nodes=NULL,BOOL selGroup=TRUE)=0
Node Names -- Creating Unique
Interface::MakeNameUnique(MSTR &name)=0
Interface::NewNameMaker(BOOL initFromScene = TRUE)=0
Node Related Methods
Interface::GetINodeByName(const MCHAR *name)=0
Interface::GetINodeByHandle(ULONG handle)=0
Interface::DeleteNode(INode *node, BOOL redraw=TRUE, BOOL overrideSlaves=FALSE)=0
Interface::GetRootNode()=0
Interface::SetNodeTMRelConstPlane(INode *node, Matrix3& mat)=0
Node Selection Sets
Interface::GetSelNodeCount()=0
Interface::GetSelNode(int i)=0
Interface::GetSelectionWorldBox(TimeValue t,Box3 &box)=0
Interface::SelectNode(INode *node, int clearSel = 1)=0
Interface::DeSelectNode(INode *node)=0
Interface::SelectNodeTab(INodeTab &nodes,BOOL sel,BOOL redraw=TRUE)=0
Interface::ClearNodeSelection(BOOL redraw=TRUE)=0
Interface::SelectionFrozen()=0
Interface::FreezeSelection()=0
Interface::ThawSelection()=0
Interface::CloneNodes(INodeTab& nodes, Point3& offset, bool expandHierarchies = true, CloneType cloneType = NODE_COPY, INodeTab* resultSource = NULL, INodeTab* resultTarget = NULL) = 0
Node Picking (interactive selection in the scene)
Interface::PickNode(HWND hWnd,IPoint2 pt,PickNodeCallback *filt=NULL)=0
Interface::BoxPickNode(ViewExp *vpt,IPoint2 *pt,BOOL crossing,PickNodeCallback *filt=NULL)=0
Interface::CirclePickNode(ViewExp *vpt,IPoint2 *pt,BOOL crossing,PickNodeCallback *filt=NULL)=0
Interface::FencePickNode(ViewExp *vpt,IPoint2 *pt,BOOL crossing,PickNodeCallback *filt=NULL)=0
Interface::SetPickMode(PickModeCallback *pc)=0
Interface::ClearPickMode()=0
Interface::FlashNodes(INodeTab *nodes)=0
IObjCreate and IObjParam Pointer Casting
Interface::GetIObjCreate()=0
Interface::GetIObjParam()=0
Preview Creation
Interface::CreatePreview(PreviewParams *pvp=NULL)=0
Progress Bar Methods
Interface::ProgressStart(MCHAR *title, BOOL dispBar, LPTHREAD_START_ROUTINE fn, LPVOID arg)=0
Interface::ProgressUpdate(int pct, BOOL showPct = TRUE, TCHAR *title = NULL)=0
Interface::ProgressEnd()=0
Interface::GetCancel()=0
Interface::SetCancel(BOOL sw)=0
Renderer Access
The following APIs provide a simplistic method to call the renderer and render frames (to gain more control over the renderer, see the methods after these first three). The renderer just uses the current user specified parameters. Note that the renderer uses the width, height, and aspect of the specified bitmap so the caller can control the size of the rendered image rendered. Also Note: These methods drive the renderer and not video post.
Interface::OpenCurRenderer(INode *camNode,ViewExp *view,RendType t = RENDTYPE_NORMAL, int w=0, int h=0)=0
Interface::OpenCurRenderer(ViewParams *vpar,RendType t = RENDTYPE_NORMAL, int w=0, int h=0)=0
Interface::CloseCurRenderer()=0
Interface::CurRendererRenderFrame(TimeValue t,Bitmap *bm,RendProgressCallback *prog=NULL, float frameDur = 1.0f , ViewParams *vp=NULL, RECT *regionRect = NULL)=0
Interface::CreateDefaultScanlineRenderer()=0
Interface::DisplayActiveCameraViewWithMultiPassEffect() = 0
Plug-In Renderer Access
Below is a set of functions parallel to those above to work with any Renderer instance.
Interface::OpenRenderer(Renderer *pRenderer, INode *camNode,ViewExp *view, RendType type = RENDTYPE_NORMAL, int w=0, int h=0)=0
Interface::OpenRenderer(Renderer *pRenderer, ViewParams *vpar, RendType type = RENDTYPE_NORMAL, int w=0, int h=0)=0
Interface::RendererRenderFrame(Renderer *pRenderer, TimeValue t, Bitmap *bm, RendProgressCallback *prog=NULL, float frameDur = 1.0f, ViewParams *vp=NULL, RECT *regionRect = NULL)=0
Interface::CloseRenderer(Renderer *pRenderer)=0
Interface::GetCurrentRenderer()=0
Interface::GetProductionRenderer()=0
Interface::GetDraftRenderer()=0
Interface::GetRenderer(RenderSettingID renderSettingID)=0
Interface::AssignCurRenderer(Renderer *rend)=0
Interface::AssignProductionRenderer(Renderer *rend)=0
Interface::AssignDraftRenderer(Renderer *rend)=0
Interface::AssignRenderer(RenderSettingID renderSettingID, Renderer *rend)=0
Interface::SetUseDraftRenderer(BOOL b)=0
Interface::GetUseDraftRenderer()=0
Interface::ChangeRenderSetting(RenderSettingID renderSettingID)=0
Interface::GetCurrentRenderSetting()=0
Interface::GetCurRenderElementMgr()=0
Interface::GetRenderElementMgr(RenderSettingID renderSettingID)=0
Interface::SetupRendParams(RendParams &rp, ViewExp *vpt, RendType t = RENDTYPE_NORMAL)=0
Interface::GetViewParamsFromNode(INode* vnode, ViewParams& vp, TimeValue t)=0
Interface::CheckForRenderAbort()=0
Interface::GetRendTimeType()=0
Interface::SetRendTimeType(int type)=0
Interface::GetRendStart()=0
Interface::SetRendStart(TimeValue start)=0
Interface::GetRendEnd()=0
Interface::SetRendEnd(TimeValue end)=0
Interface::GetRendNThFrame()=0
Interface::SetRendNThFrame(int n)=0
Interface::GetRendShowVFB()=0
Interface::SetRendShowVFB(BOOL onOff)=0
Interface::GetRendSaveFile()=0
Interface::SetRendSaveFile(BOOL onOff)=0
Interface::GetRendUseDevice()=0
Interface::SetRendUseDevice(BOOL onOff)=0
Interface::GetRendUseNet()=0
Interface::SetRendUseNet(BOOL onOff)=0
Interface::GetRendFileBI()=0
Interface::GetRendDeviceBI()=0
Interface::GetRendWidth()=0
Interface::SetRendWidth(int w)=0
Interface::GetRendHeight()=0
Interface::SetRendHeight(int h)=0
Interface::GetRendApect()=0
Interface::SetRendAspect(float a)=0
Interface::GetRendImageAspect()=0
Interface::GetRendApertureWidth()=0
Interface::SetRendApertureWidth(float aw)=0
Interface::GetRendFieldRender()=0
Interface::SetRendFieldRender(BOOL onOff)=0
Interface::GetRendColorCheck()=0
Interface::SetRendColorCheck(BOOL onOff)=0
Interface::GetRendSuperBlack()=0
Interface::SetRendSuperBlack(BOOL onOff)=0
Interface::GetRendHidden()=0
Interface::SetRendHidden(BOOL onOff)=0
Interface::GetRendForce2Side()=0
Interface::SetRendForce2Side(BOOL onOff)=0
Interface::GetRendAtmosphere()=0
Interface::SetRendAtmosphere(BOOL onOff)=0
Interface::GetRendEffects()=0
Interface::SetRendEffects(BOOL onOff)=0
Interface::GetRendDisplacement()=0
Interface::SetRendDisplacement(BOOL onOff)=0
Interface::GetRendPickFramesString()=0
Interface::GetRendDitherTrue()=0
Interface::SetRendDitherTrue(BOOL onOff)=0
Interface::GetRendDither256()=0
Interface::SetRendDither256(BOOL onOff)=0
Interface::GetRendMultiThread()=0
Interface::SetRendMultiThread(BOOL onOff)=0
Interface::GetRendNThSerial()=0
Interface::SetRendNThSerial(BOOL onOff)=0
Interface::GetRendVidCorrectMethod()=0
Interface::SetRendVidCorrectMethod(int m)=0
Interface::GetRendFieldOrder()=0
Interface::SetRendFieldOrder(int fo)=0
Interface::GetRendNTSC_PAL()=0
Interface::SetRendNTSC_PAL(int np)=0
Interface::GetRendSuperBlackThresh()=0
Interface::SetRendSuperBlackThresh(int sb)=0
Interface::GetRendFileNumberBase()=0
Interface::SetRendFileNumberBase(int n)=0
Interface::GetSkipRenderedFrames()=0
Interface::SetSkipRenderedFrames(BOOL onOff)=0
Right Click Menu Related Methods
Interface::GetRightClickMenuManager()=0
Rollup Page Related Methods
See "Command Panel and Rollup Page methods".
Selection Sets (Named)
See Also: Sub-Object Selection Sets (Named)
Interface::ClearCurNamedSelSet()=0
Interface::SetCurNamedSelSet(MCHAR *setName)=0
Interface::NamedSelSetListChanged()=0
Interface::GetNumNamedSelSets()=0
Interface::GetNamedSelSetName(int setNum)=0
Interface::GetNamedSelSetItemCount(int setNum)=0
Interface::GetNamedSelSetItem(int setNum,int i)=0
Interface::AddNewNamedSelSet(INodeTab &nodes, MSTR &name)=0
Interface::RemoveNamedSelSet(MSTR &name)=0
Scene Access
Interface::GetScenePointer()=0
Show End Result Related Methods
Interface::EnableShowEndResult(BOOL enabled)=0
Interface::GetShowEndResult()=0
Interface::SetShowEndResult(BOOL show)=0
Slave / Server Mode Methods
Interface::InSlaveMode()=0
Interface::IsNetServer()=0
Interface::SetNetServer()=0
Snap Related Methods
Interface::InitSnapInfo(SnapInfo *info)=0
Interface::SnapAngle(float angleIn, BOOL fastSnap=TRUE, BOOL forceSnap=FALSE)=0
Interface::SnapPercent(float percentIn)=0
Interface::GetSnapState()=0
Interface::GetSnapMode()=0
Interface::SetSnapMode(int mode)=0
Sound Object Access
Interface::GetSoundObject()=0
Interface::SetSoundObject(SoundObj *snd)=0
Sub-Object Related Methods
Interface::RegisterSubObjectTypes(const TCHAR **types, int count, int startIndex=0)=0
Interface::GetSubObjectLevel()=0
Interface::SetSubObjectLevel(int level, BOOL force = FALSE)=0
Interface::GetNumSubObjectLevels()=0
Interface::EnableSubObjectSelection(BOOL enable)=0
Interface::IsSubObjectSelectionEnabled()=0
Interface::PipeSelLevelChanged()=0
Interface::GetPipelineSubObjLevel(DWORDTab &levels)=0
Interface::SubObHitTest(TimeValue t, int type, int crossing, int flags, IPoint2 *p, ViewExp *vpt)=0
Sub-Object Selection Sets (Named)
Interface::AppendSubObjectNamedSelSet(const MCHAR *set)=0
Interface::ClearSubObjectNamedSelSets()=0
Status Panel / Prompt Related Methods
Generally prompts are set by the command mode and these are the methods used. The developer may use the DisplayTempPrompt() method below to temporarily display a prompt to the user independent of a command mode.
Interface::PushPrompt(MCHAR *s )=0
Interface::PopPrompt()=0
Interface::ReplacePrompt(MCHAR *s )=0
Interface::DisplayTempPrompt( TCHAR *s, int msec=1000)=0
Interface::RemoveTempPrompt()=0
Interface::DisableStatusXYZ()=0
Interface::EnableStatusXYZ()=0
Interface::SetStatusXYZ(Point3 xyz,int type)=0
Interface::SetStatusXYZ(AngAxis aa)=0
Track Bar and Track View Related Methods
Interface::GetTrackViewRootNode()=0
Interface::CreateTreeViewChild(ReferenceTarget* root, HWND hParent, DWORD style=0, ULONG id=0, int open=OPENTV_SPECIAL)=0
Interface::GetTrackBar()=0
Time Configuration Key Steps Settings Access
Interface::GetKeyStepsSelOnly()=0
Interface::SetKeyStepsSelOnly(BOOL onOff)=0
Interface::GetKeyStepsUseTrans()=0
Interface::SetKeyStepsUseTrans(BOOL onOff)=0
Interface::GetKeyStepsPos()=0
Interface::SetKeyStepsPos(BOOL onOff)=0
Interface::GetKeyStepsRot()=0
Interface::SetKeyStepsRot(BOOL onOff)=0
Interface::GetKeyStepsScale()=0
Interface::SetKeyStepsScale(BOOL onOff)=0
Interface::GetKeyStepsUseTrackBar()=0
Interface::SetKeyStepsUseTrackBar(BOOL onOff)=0
User Interface Controls and Properties
Interface::SetFlyOffTime(int msecs)=0
Interface::GetFlyOffTime()=0
Interface::GetCrossing()=0
Interface::SetToolButtonState(int button, BOOL state )=0
Interface::GetAxisConstraints()=0
Interface::SetAxisConstraints(int c)=0
Interface::EnableAxisConstraints(int c, BOOL enabled)=0
Interface::PushAxisConstraints(int c)=0
Interface::PopAxisConstraints()=0
Interface::GetCoordCenter()=0
Interface::SetCoordCenter(int c)=0
Interface::EnableCoordCenter(BOOL enabled)=0
Interface::GetRefCoordSys()=0
Interface::SetRefCoordSys(int c)=0
Interface::EnableRefCoordSys(BOOL enabled)=0
Interface::GetPlaybackLoop()=0
Interface::SetPlaybackLoop(BOOL loop)=0
Video Post Related Methods
Interface::GetINodeFromRenderID(UWORD id)=0
Interface::GetSelectFilter()=0
Interface::SetSelectFilter(int c)=0
Interface::GetNumberSelectFilters()=0
Interface::GetSelectFilterName(int index)=0
Interface::GetDisplayFilter(int index) = 0
Interface::SetDisplayFilter(int index, BOOL on) = 0
Interface::GetNumberDisplayFilters() = 0
Interface::GetDisplayFilterName(int index)=0
Interface::DisplayFilterIsNodeVisible(int index, int sid, Class_ID cid, INode *node) = 0
Viewport Access
Interface::RedrawViews(TimeValue t, DWORD vpFlags=REDRAW_NORMAL, ReferenceTarget *change=NULL)=0
Interface::ForceCompleteRedraw(BOOL doDisabled=TRUE)=0
Interface::DisableSceneRedraw()=0
Interface::EnableSceneRedraw()=0
Interface::IsSceneRedrawDisabled()=0
Interface::SetActiveViewport( HWND hwnd )=0
Interface::GetActiveViewport()=0
Interface::GetViewport( HWND hwnd )=0
Interface::ReleaseViewport( ViewExp *vpt )=0
Interface::GetViewportLayout()=0
Interface::SetViewportLayout(int layout)=0
Interface::IsViewportMaxed()=0
Interface::SetViewportMax(BOOL max)=0
Interface::ViewportZoomExtents(BOOL doAll, BOOL skipPersp=FALSE)=0
Interface::IsCPEdgeOnInView()=0
Interface::MakeExtendedViewportActive(HWND hWnd)=0
Interface::PutUpViewMenu(HWND hWnd, POINT pt)=0
Interface::RegisterViewWindow(ViewWindow *vw)=0
Interface::UnRegisterViewWindow(ViewWindow *vw)=0
Interface::ZoomToBounds(BOOL doAll, Box3 box)=0
Viewport Background Properties
Interface::SetViewportBGColor(const Point3 &color)=0
Interface::GetViewportBGColor()=0
Interface::setBkgImageName(MCHAR *name)=0
Interface::getBkgImageName()=0
Interface::setBkgImageAspect(int t)=0
Interface::getBkgImageAspect()=0
Interface::setBkgImageAnimate(BOOL onOff)=0
Interface::getBkgImageAnimate()=0
Interface::setBkgFrameRange(int start, int end, int step=1)=0
Interface::getBkgFrameRangeVal(int which)=0
Interface::setBkgORType(int which, int type)=0
Interface::getBkgORType(int which)=0
Interface::setBkgStartTime(TimeValue t)=0
Interface::getBkgStartTime()=0
Interface::setBkgSyncFrame(int f)=0
Interface::getBkgSyncFrame()=0
Interface::getBkgFrameNum(TimeValue t)=0
Window Handle of MAX
Interface::GetMAXHWnd()=0
Windows Messages
Interface::TranslateAndDispatchMAXMessage(MSG &msg)=0
Interface::CheckMAXMessages()=0
Interface::RescaleWorldUnits(float f, BOOL selected)=0
Transform Gizmo Related Methods
Interface::GetUseTransformGizmo()=0
Interface::SetUseTransformGizmo(BOOL onOff)=0
Interface::SetTransformGizmoRestoreAxis(BOOL bOnOff)=0
Interface::GetTransformGizmoRestoreAxis()=0
Interface::GetConstantAxisRestriction()=0
Interface::SetConstantAxisRestriction(BOOL onOff)=0
Interface::HitTestTransformGizmo(IPoint2 *p, ViewExp *vpt, int axisFlags) = 0
Add / Delete Class Methods
Interface::AddClass(ClassDesc *cd)=0
Interface::DeleteClass(ClassDesc *cd)=0
Property Set Access
The following methods provide developer access to the property set data stored by MAX. A MAX user can enter this data via the File Properties dialog. There are three tabs to this dialog which correspond to the options which may be specified for the PropertySet parameter used in the methods below. The PROPSPEC and PROPVARIANT structures used below are part of the Windows API. Developers can find sample code using these methods in /MAXSDK/SAMPLES/UTILITIES/PROPERTYTEST/PROPERTYTEST.CPP.
Interface::GetNumProperties(int PropertySet)=0
Interface::FindProperty(int PropertySet, const PROPSPEC* propspec)=0
Interface::GetPropertyVariant(int PropertySet, int idx)=0
Interface::GetPropertySpec(int PropertySet, int idx)=0
Interface::AddProperty(int PropertySet, const PROPSPEC* propspec, const PROPVARIANT* propvar)=0
Interface::DeleteProperty(int PropertySet, const PROPSPEC* propspec)=0
XRef Methods
Interface::SetIncludeXRefsInHierarchy(BOOL onOff)=0
Interface::GetIncludeXRefsInHierarchy()=0
Interface::IsXRefAutoUpdateSuspended()=0
Interface::SetXRefAutoUpdateSuspended(BOOL onOff)=0
Interface::IsSceneXRefNode(INode *node)=0
Licensing Methods
Interface::IsTrialLicense()=0
Interface::IsNetworkLicense()=0
Interface::GetProductVersion()=0
Interface::GetLicenseBehavior()=0
Interface::GetLicenseDaysLeft()=0
Interface::IsFeatureLicensed(int subNum)=0
Deferred Loading Related Methods
Interface::EnableDeferredPluginLoading(bool onOff)=0
Interface::DeferredPluginLoadingEnabled()=0
Undo / Redo Related Methods
Interface::FlushUndoBuffer()=0