Method Groups for Class Animatable
The methods in this class are grouped below.
(Links go to the Animatable Class Reference page.)
- Class Name, ClassID and SuperClassID Methods
- Animatable::GetClassName(MSTR &s)
Animatable::ClassID()
Animatable::SuperClassID()
- Memory Management
- Animatable::DeleteThis()
- Parameter Editing Methods
- Animatable::BeginEditParams(IObjParam *ip,ULONG flags,Animatable *prev=NULL)
Animatable::EndEditParams(IObjParam *ip, ULONG flags,Animatable *next=NULL)
- Bitmap Related Methods
- Animatable::FreeAllBitmaps()
- Methods for Sub-Anims.
- See Also: Advanced Topics Sub-Anims.
Animatable::NumSubs()
Animatable::SubAnim(int i)
Animatable::SubAnimName(int i)
Animatable::SelectSubAnim(int subNum)
Animatable::GetParamDimension(int i)
Animatable::GetSubAnimCurveColor(int subNum)
Animatable::SubNumToRefNum(int subNum)
Animatable::CanCopyAnim()
Animatable::HasSubElements(int type=0)
Animatable::CanDeleteSubAnim(int i)
Animatable::DeleteSubAnim(int i)
- Controller Assignment
- Animatable::AssignController(Animatable *control, int subAnim)
- Animation Properties
- Animatable::IsAnimated()
- Make Unique Control
- Animatable::CanMakeUnique()
- Flag Access
- Animatable::SetAFlag(DWORD mask)
Animatable::ClearAFlag(DWORD mask)
Animatable::TestAFlag(DWORD mask)
Animatable::FreeCaches()
- AppData, Interfaces, and Properties.
- The following methods deal with AppData. This is application specific data that may be attached to any Animatable in the scene. With these APIs any 3ds Max object (controller, object, node, modifier, material, etc.) can have custom data attached by other objects. These chunks are saved in the .MAX file and can be accessed through the object they are attached to. Sample code using these APIs can be found in /MAXSDK/SAMPLES/UTILITIES/APPDATA.CPP.
Animatable::AddAppDataChunk(Class_ID cid, SClass_ID sid, DWORD sbid, DWORD len, void *d)
Animatable::GetAppDataChunk(Class_ID cid, SClass_ID sid, DWORD sbid)
Animatable::RemoveAppDataChunk(Class_ID cid, SClass_ID sid, DWORD sbid)
Animatable::ClearAllAppData()
Animatable::GetInterface(ULONG id)
Animatable::ReleaseInterface(ULONG id,void* i)
Animatable::GetInterface(Interface_ID id)
Animatable::SetProperty(ULONG id, void *data)
Animatable::GetProperty(ULONG id)
- Clipboard Methods
- Animatable::CanCopyTrack(Interval iv, DWORD flags)
Animatable::CanPasteTrack(TrackClipObject *cobj,Interval iv, DWORD flags)
Animatable::CopyTrack(Interval iv, DWORD flags)
Animatable::PasteTrack(TrackClipObject *cobj, Interval iv, DWORD flags)
Animatable::CanCopySubTrack(int subNum, Interval iv, DWORD flags)
Animatable::CanPasteSubTrack(int subNum, TrackClipObject *cobj, Interval iv, DWORD flags)
Animatable::CopySubTrack(int subNum, Interval iv, DWORD flags)
Animatable::PasteSubTrack(int subNum, TrackClipObject *cobj,Interval iv, DWORD flags)
- Interactive Adjustment
- Animatable::MouseCycleCompleted(TimeValue t)
Animatable::MouseCycleStarted(TimeValue t)
- Methods called when rendering is started and finished
- Animatable::RenderBegin(TimeValue t, ULONG flags=0)
Animatable::RenderEnd(TimeValue t)
- System Plug-In Related Methods
- Animatable::GetSystemNodes(INodeTab &nodes, SysNodeContext)
- The following methods deal with operations to Keys and Track View:
- Animatable::BypassTreeView()
Animatable::BypassTrackBar()
Animatable::BypassPropertyLevel()
Animatable::InvisibleProperty()
Animatable::NumKeys()
Animatable::GetKeyTime(int index)
Animatable::GetKeyIndex(TimeValue t)
Animatable::GetNextKeyTime(TimeValue t,DWORD flags,TimeValue &nt)
Animatable::CopyKeysFromTime(TimeValue src,TimeValue dst,DWORD flags)
Animatable::DeleteKeyAtTime(TimeValue t)
Animatable::IsKeyAtTime(TimeValue t,DWORD flags)
Animatable::GetKeyTimes(Tab<TimeValue> ×, Interval range, DWORD flags)
Animatable::GetKeySelState(BitArray &sel,Interval range,DWORD flags)
Animatable::OpenTreeEntry(int type, DWORD tv)
Animatable::CloseTreeEntry(int type, DWORD tv)
Animatable::IsTreeEntryOpen(int type, DWORD tv)
Animatable::GetSelInTrackView(DWORD tv)
Animatable::SetSelInTrackView(DWORD tv, BOOL sel)
Animatable::InTrackViewSelSet(int which)
Animatable::SetTrackViewSelSet(int which, BOOL inOut)
- Operations to a selected block of time.
- Animatable::GetTimeRange(DWORD flags)
Animatable::EditTimeRange(Interval range,DWORD flags)
Animatable::DeleteTime(Interval iv, DWORD flags)
Animatable::ReverseTime(Interval iv, DWORD flags)
Animatable::ScaleTime(Interval iv, float s)
Animatable::InsertTime(TimeValue ins, TimeValue amount)
Animatable::SupportTimeOperations()
Animatable::MapKeys(TimeMap *map, DWORD flags)
Animatable::DeleteKeys(DWORD flags)
Animatable::DeleteKeyByIndex(int index)
Animatable::SelectKeys(TrackHitTab& sel, DWORD flags)
Animatable::SelectSubKeys(int subNum, TrackHitTab& sel, DWORD flags)
Animatable::SelectSubCurve(int subNum,BOOL sel)
Animatable::SelectKeyByIndex(int i, BOOL sel)
Animatable::FlagKey(TrackHitRecord hit)
Animatable::GetFlagKeyIndex()
Animatable::NumSelKeys()
Animatable::CloneSelectedKeys(BOOL offset=FALSE)
Animatable::AddNewKey(TimeValue t,DWORD flags)
Animatable::MoveKeys(ParamDimensionBase *dim,float delta,DWORD flags)
Animatable::ScaleKeyValues(ParamDimensionBase *dim,float origin, float scale,DWORD flags)
Animatable::SelectCurve(BOOL sel)
Animatable::IsCurveSelected()
Animatable::IsKeySelected(int index)
Animatable::GetSelKeyCoords(TimeValue &t, float &val, DWORD flags)
Animatable::SetSelKeyCoords(TimeValue t, float val,DWORD flags)
Animatable::SetSelKeyCoordsExpr(ParamDimension *dim, MCHAR *timeExpr, MCHAR *valExpr, DWORD flags)
Animatable::AdjustTangents(TrackHitRecord hit,ParamDimensionBase *dim, Rect& rcGraph,float tzoom, int tscroll,float vzoom, int vscroll,int dx,int dy, DWORD flags)
- Drawing and hit testing tracks
- Animatable::GetTrackVSpace(int lineHeight)
Animatable::HitTestTrack(TrackHitTab& hits,Rect& rcHit,Rect& rcTrack,float zoom,int scroll,DWORD flags)
Animatable::PaintTrack(ParamDimensionBase *dim, HDC hdc,Rect& rcTrack,Rect& rcPaint, float zoom, int scroll, DWORD flags)
Animatable::PaintSubTrack(int subNum, ParamDimensionBase *dim, HDC hdc, Rect& rcTrack, Rect& rcPaint, float zoom, int scroll, DWORD flags)
- Drawing and hit testing function curves
- Animatable::PaintFCurves(ParamDimensionBase *dim, HDC hdc, Rect& rcGraph,Rect& rcPaint, float tzoom, int tscroll, float vzoom, int vscroll, DWORD flags)
Animatable::HitTestFCurves(ParamDimensionBase *dim,TrackHitTab& hits, Rect& rcHit, Rect& rcGraph,float tzoom, int tscroll,float vzoom,int vscroll, DWORD flags)
Animatable::PaintSubFCurves(int subNum, ParamDimensionBase *dim, HDC hdc, Rect& rcGraph,Rect& rcPaint, float tzoom, int tscroll, float vzoom, int vscroll, DWORD flags)
Animatable::HitTestSubFCurves(int subNum, ParamDimensionBase *dim, TrackHitTab& hits, Rect& rcHit, Rect& rcGraph, float tzoom, int tscroll, float vzoom, int vscroll, DWORD flags)
Animatable::EditTrackParams(TimeValue t, ParamDimensionBase *dim, MCHAR *pname, HWND hParent, IObjParam *ip, DWORD flags)
Animatable::TrackParamsType()
Animatable::GetFCurveExtents(ParamDimensionBase *dim,float &min, float &max, DWORD flags)
- Sub-Class Indication
- Animatable::IsSubClassOf(Class_ID classID)
- Enumeration of Anims and Auxiliary Files
- Animatable::EnumAnimTree(AnimEnum *animEnum, Animatable *client, int subNum) Animatable::EnumAuxFiles(AssetEnumCallback& nameEnum, DWORD flags)
Animatable::NumChildren()
Animatable::ChildAnim(int i)
Animatable::NodeName()
- The following methods deal with Note Tracks.
- Animatable::AddNoteTrack(NoteTrack *note)
Animatable::DeleteNoteTrack(NoteTrack *note, BOOL delNote=TRUE)
Animatable::HasNoteTracks()
Animatable::NumNoteTracks()
Animatable::GetNoteTrack(int i)
- Parameter Block2 Methods
- Animatable::NumParamBlocks()
Animatable::GetParamBlock(int i)
Animatable::GetParamBlockByID(short id)
- Schematic View Methods
- Animatable::SvSaveData(ISave *isave, USHORT id)
Animatable::SvLoadData(ILoad *iLoad)
Animatable::SvTraverseAnimGraph(IGraphObjectManager *gom, Animatable *owner, int id, DWORD flags)
Animatable::SvStdTraverseAnimGraph(IGraphObjectManager *gom, Animatable *owner, int id, DWORD flags)
Animatable::SvCanInitiateLink(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvCanConcludeLink(IGraphObjectManager *gom, IGraphNode *gNode, IGraphNode *initiatingGNode)
Animatable::SvGetName(IGraphObjectManager *gom, IGraphNode *gNode, bool isBeingEdited)
Animatable::SvCanSetName(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvSetName(IGraphObjectManager *gom, IGraphNode *gNode, MSTR &name)
Animatable::SvCanRemoveThis(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvRemoveThis(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvIsHighlighted(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvHighlightColor(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvGetSwatchColor(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvIsInactive(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvLinkChild(IGraphObjectManager *gom, IGraphNode *gNodeThis, IGraphNode *gNodeChild)
Animatable::SvHandleDoubleClick(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvGetMultiSelectCallback(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvCanSelect(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvEditProperties(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvGetTip(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvGetRefTip(IGraphObjectManager *gom, IGraphNode *gNode, IGraphNode *gNodeMaker)
Animatable::SvCanDetach(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvDetach(IGraphObjectManager *gom, IGraphNode *gNode)
Animatable::SvGetRefIndex()
Animatable::SvSetRefIndex(DWORD i)
Animatable::SvDeleteRefIndex()
Animatable::operator=(const Animatable& an)
- The following function is not a part of class Animatable but is available for use with note tracks:
NoteTrack *NewDefaultNoteTrack();
- Custom Attributes
- Animatable::GetCustAttribContainer()
Animatable::AllocCustAttribContainer()
Animatable::DeleteCustAttribContainer()