LodObject Class Reference Library » LOD Object

#include <lib_lodobject.h>

Inheritance diagram for LodObject:

详细描述

Represents the LOD object.

由于
R19

私有成员函数

  LodObject ()
  ~LodObject ()

Alloc/Free

static LodObject Alloc ()
static void  Free ( LodObject *&op)

Get Dynamic DescID

Bool   GetShowControlDescID ( Int32 level, DescID &resultId) const
Bool   GetManualModeObjectListDescID ( Int32 level, DescID &resultId) const
Bool   GetSimplifyModeDescID ( Int32 level, DescID &resultId) const
Bool   GetDecimateStrengthDescID ( Int32 level, DescID &resultId) const
Bool   GetPerObjectControlDescID ( Int32 level, DescID &resultId) const
Bool   GetNullDisplayDescID ( Int32 level, DescID &resultId) const
Bool   GetNullRadiusDescID ( Int32 level, DescID &resultId) const
Bool   GetNullAspectRatioDescID ( Int32 level, DescID &resultId) const
Bool   GetNullOrientationDescID ( Int32 level, DescID &resultId) const
Bool   GetDisplayStModeDescID ( Int32 level, DescID &resultId) const
Bool   GetDisplayShModeDescID ( Int32 level, DescID &resultId) const
Bool   GetDisplayBFCDescID ( Int32 level, DescID &resultId) const
Bool   GetDisplayTexDescID ( Int32 level, DescID &resultId) const

Level/Cache

Int32   GetCurrentLevel () const
Int32   GetLevelCount () const
Int32   GetCacheCount () const
BaseObject GetCacheObject ( Int32 index) const
UInt32   GetLevelDirty () const
UInt32   GetCacheDirty () const

Additional Inherited Members

-  Public Member Functions inherited from BaseObject
BaseObject GetNext (void)
BaseObject GetPred (void)
BaseObject GetUp (void)
BaseObject GetDown (void)
BaseObject GetDownLast (void)
向量   GetAbsPos () const
void  SetAbsPos (const 向量 &v)
向量   GetAbsScale () const
void  SetAbsScale (const 向量 &v)
向量   GetAbsRot () const
void  SetAbsRot (const 向量 &v)
向量   GetFrozenPos () const
void  SetFrozenPos (const 向量 &v)
向量   GetFrozenScale () const
void  SetFrozenScale (const 向量 &v)
向量   GetFrozenRot () const
void  SetFrozenRot (const 向量 &v)
向量   GetRelPos () const
void  SetRelPos (const 向量 &v)
向量   GetRelScale () const
void  SetRelScale (const 向量 &v)
向量   GetRelRot () const
void  SetRelRot (const 向量 &v)
const 矩阵 GetMl (void) const
void  SetMl (const 矩阵 &m)
矩阵   GetFrozenMln () const
矩阵   GetRelMln () const
矩阵   GetRelMl () const
void  SetRelMl (const 矩阵 &m)
矩阵   GetMg () const
void  SetMg (const 矩阵 &m)
矩阵   GetMln () const
矩阵   GetMgn () const
矩阵   GetUpMg () const
void  CopyMatrixTo ( BaseObject *dst)
向量   GetMp (void)
向量   GetRad (void)
Int32   GetEditorMode (void) const
Int32   GetEditorModeH (void) const
void  SetEditorMode ( Int32 mode)
Int32   GetRenderMode (void) const
Int32   GetRenderModeH (void) const
void  SetRenderMode ( Int32 mode)
Bool   GetDeformMode (void) const
void  SetDeformMode ( Bool mode)
Int32   GetRealDeformMode (void) const
void  SetRealDeformMode ( Int32 mode)
Int32   GetUniqueIP (void)
void  SetUniqueIP ( Int32 ip)
BaseTag GetFirstTag (void)
BaseTag GetLastTag (void)
BaseTag GetTag ( Int32 type, Int32 nr=0)
const maxon::BaseArray < BaseTag * > *  GetTagsOfType ( Int32 type) const
const maxon::BaseArray < BaseTag * > *  GetTagsWithFlags ( Int32 flags) const
const void *  GetTagDataR ( Int32 type, Int32 nr=0) const
void *  GetTagDataW ( Int32 type, Int32 nr=0)
Int32   GetTagDataCount ( Int32 type) const
BaseTag MakeTag ( Int32 type, BaseTag *pred=nullptr)
VariableTag MakeVariableTag ( Int32 type, Int32 count, BaseTag *pred=nullptr)
void  InsertTag ( BaseTag *tp, BaseTag *pred=nullptr)
void  KillTag ( Int32 type, Int32 nr=0)
Bool   CopyTagsTo ( BaseObject *dest, Int32 visible, Int32 variable, Int32 hierarchical, AliasTrans *trans)
BaseObject GetCache ( HierarchyHelp *hh=nullptr)
BaseObject GetDeformCache (void)
LineObject GetIsoparm (void)
void  SetIsoparm ( LineObject *l)
BaseObject GetCacheParent (void) const
BaseObject GetCacheTopParent (void) const
Bool   SetPhong ( Bool on, Bool anglelimit, Float angle)
Bool   IsDirty ( DIRTYFLAGS flags)
void  SetDirty ( DIRTYFLAGS flags)
Bool   CheckCache ( HierarchyHelp *hh)
void  Touch (void)
void  GetColorProperties ( ObjectColorProperties *prop)
void  SetColorProperties ( ObjectColorProperties *prop)
const 矩阵 GetModelingAxis ( BaseDocument *doc)
void  SetModelingAxis (const 矩阵 &m)
BaseObject GetAndCheckHierarchyClone ( HierarchyHelp *hh, BaseObject *op, HIERARCHYCLONEFLAGS flags, Bool *dirty, AliasTrans *trans, Bool allchildren)
BaseObject GetHierarchyClone ( HierarchyHelp *hh, BaseObject *op, HIERARCHYCLONEFLAGS flags, Bool *dirty, AliasTrans *trans)
BaseObject GetHierarchyClone ( HierarchyHelp *hh, BaseObject *op, HIERARCHYCLONEFLAGS flags, Bool *dirty, AliasTrans *trans, DIRTYFLAGS dirtyflags)
void  NewDependenceList (void)
Bool   CompareDependenceList (void)
void  AddDependence ( HierarchyHelp *hh, BaseObject *op)
void  AddDependence ( HierarchyHelp *hh, BaseObject *op, DIRTYFLAGS dirtyflags)
void  TouchDependenceList (void)
void  SetRotationOrder ( ROTATIONORDER order)
ROTATIONORDER   GetRotationOrder (void) const
void  SetQuaternionRotationMode ( Bool active, Bool bUndo)
Bool   IsQuaternionRotationMode (void)
Bool   SynchronizeVectorTrackKeys ( Int32 vectorTrackID, Bool bUndo, BaseTime startRange= BaseTime (-108000, 1), BaseTime endRange= BaseTime (108000, 1))
Bool   FindBestEulerAngle ( Int32 rotationTrackID, Bool bAdjustTangent, Bool bUndo, BaseTime startRange= BaseTime (-108000, 1), BaseTime endRange= BaseTime (108000, 1))
Bool   EvaluateSynchronizedRotation (const BaseTime &time, ANIMATEFLAGS flags, 向量 *resultRotation=nullptr)
Bool   GetVectorTracks (const DescID &id, CTrack *&xfound, CTrack *&yfound, CTrack *&zfound)
Bool   GetVectorCurves ( CCurve *curveToSearch, CCurve *&xfound, CCurve *&yfound, CCurve *&zfound)
UInt64   GetGUID ()
Int32   GetHighlightHandle ( BaseDraw *bd)
SplineObject GetRealSpline (void)
Float   GetVisibility ( Float parent)
Bool   SearchHierarchy ( BaseObject *op)
BaseObject GetOrigin ( Bool safe)
void  SetOrigin ( BaseObject *origin)
BaseObject GetTopOrigin ( Bool parent, Bool safe)
BaseObject GetEditObject ( BaseObject **psds, DISPLAYEDITSTATE state, Bool safetey=true)
void  RemoveFromCache (void)
DRAWRESULT   ObjDraw ( DRAWPASS drawpass, BaseDraw *bd, BaseDrawHelp *bh)
-  Public Member Functions inherited from BaseList2D
const Char GetViewportRenderId ( VIEWPORT_RENDER_ID typeId) const
BaseList2D GetNext ()
BaseList2D GetPred ()
void  SetBit ( Int32 mask)
Bool   GetBit ( Int32 mask) const
void  DelBit ( Int32 mask)
void  ToggleBit ( Int32 mask)
Int32   GetAllBits () const
void  SetAllBits ( Int32 bits)
void  SetBitEx ( Int32 mask, Int32 flags)
BaseContainer   GetData ()
void  SetData (const BaseContainer &bc, Bool add=true)
const BaseContainer GetDataInstance () const
BaseContainer GetDataInstance ()
const BaseContainer GetDataInstanceRef () const
BaseContainer GetDataInstanceRef ()
String   GetName () const
void  SetName (const maxon::String &name)
String   GetBubbleHelp ()
Bool   TransferGoal ( BaseList2D *dst, Bool undolink)
Bool   TransferMarker ( BaseList2D *dst) const
Bool   比例 ( Float scale)
Bool   编辑 ()
void  GetIcon ( IconData *dat)
GeListHead GetNLARoot ()
BaseList2D AnimationLayerRemap ( BaseObject **layer=nullptr)
String   GetTypeName ()
BaseList2D GetMain () const
void  InsertTrackSorted ( CTrack *track)
Bool   AddEventNotification ( BaseList2D *bl, NOTIFY_EVENT eventid, NOTIFY_EVENT_FLAG flags, const BaseContainer *data)
Bool   RemoveEventNotification ( BaseDocument *doc, BaseList2D *bl, NOTIFY_EVENT eventid)
Bool   FindEventNotification ( BaseDocument *doc, BaseList2D *bl, NOTIFY_EVENT eventid)
Bool   SetDescIDState (const DescID &id, DESCIDSTATE descidstate)
DESCIDSTATE   GetDescIDState (const DescID &id, Bool tolerant) const
GeListHead GetOverrideRoot ()
BaseOverride GetFirstOverride ()
GeListHead GetShaderRepositoryRoot ()
GeListHead GetHiddenShaderRoot ()
maxon::NimbusInterface *  GetNimbusRef (const maxon::Id &spaceId) const
maxon::Result < maxon::NimbusInterface * >  GetOrCreateNimbusRef (const maxon::Id &spaceId)
void  RemoveNimbusRef (const maxon::Id &spaceId)
maxon::Result < maxon::HashMap < maxon::Id , maxon::ForwardRef < maxon::NimbusRef > > >  GetAllNimbusRefs () const
Bool   IsNodeBased () const
void  GetMarkerStampEx ( UInt32 *l1, UInt32 *l2)
const GeMarker GetMarker () const
void  SetMarker (const GeMarker &m)
Bool   AddUniqueID ( Int32 appid, const Char *const mem, Int bytes)
Bool   FindUniqueID ( Int32 appid, const Char *&mem, Int &bytes) const
Int32   GetUniqueIDCount () const
Bool   GetUniqueIDIndex ( Int32 idx, Int32 &id, const Char *&mem, Int &bytes) const
Bool   SetAnimatedParameter ( CTrack *track, const DescID &id, const GeData &t_data1, const GeData &t_data2, Float mix, DESCFLAGS_SET flags)
Bool   GetAnimatedParameter (const DescID &id, GeData &t_data1, GeData &t_data2, Float &mix, DESCFLAGS_GET flags)
BaseShader GetFirstShader () const
void  InsertShader ( BaseShader *shader, BaseShader *pred=nullptr)
void  ClearKeyframeSelection ()
Bool   FindKeyframeSelection (const DescID &id)
Bool   SetKeyframeSelection (const DescID &id, Bool selection)
Bool   KeyframeSelectionContent ()
LayerObject GetLayerObject ( BaseDocument *doc)
Bool   SetLayerObject ( LayerObject *layer)
const LayerData GetLayerData ( BaseDocument *doc, Bool rawdata=false)
Bool   SetLayerData ( BaseDocument *doc, const LayerData &data)
GeListHead GetCTrackRoot ()
CTrack GetFirstCTrack ()
CTrack FindCTrack (const DescID &id)
-  Public Member Functions inherited from GeListNode
GeListNode GetNext ()
GeListNode GetPred ()
GeListNode GetDown ()
GeListNode GetUp ()
GeListNode GetDownLast ()
void  InsertBefore ( GeListNode *bl)
void  InsertAfter ( GeListNode *bl)
void  InsertUnder ( GeListNode *bl)
void  InsertUnderLast ( GeListNode *bl)
void  移除 ()
GeListHead GetListHead ()
Int32   GetNodeID ( Int32 index=0) const
template<typename CAST >
const CAST *  GetNodeData ( Int32 index=0) const
template<typename CAST >
CAST *  GetNodeData ( Int32 index=0)
void  SetCustomData ( GeListNode *node)
GeListNode GetCustomData ()
BaseDocument GetDocument ()
Int32   GetBranchInfo ( BranchInfo *info, Int32 max, GETBRANCHINFO flags)
Bool   IsDocumentRelated ()
Int32   GetInfo ()
Bool   GetNBit ( NBIT bit) const
UInt32   GetNBitMask ( Int32 index) const
Bool   ChangeNBit ( NBIT bit, NBITCONTROL bitmode)
-  Public Member Functions inherited from C4DAtom
Int32   GetType () const
Int32   GetRealType () const
Int32   GetDiskType () const
Bool   IsInstanceOf ( Int32 id) const
Int32   GetClassification () const
Bool   消息 ( Int32 type, void *data=nullptr)
Bool   MultiMessage ( MULTIMSG_ROUTE flags, Int32 type, void *data)
C4DAtom GetClone ( COPYFLAGS flags, AliasTrans *trn)
Bool   CopyTo ( C4DAtom *dst, COPYFLAGS flags, AliasTrans *trn)
Bool   读取 ( HyperFile *hf, Int32 id, Int32 level)
Bool   Write ( HyperFile *hf)
Bool   ReadObject ( HyperFile *hf, Bool readheader)
Bool   WriteObject ( HyperFile *hf)
Bool   GetDescription ( 描述 *description, DESCFLAGS_DESC flags)
Bool   GetParameter (const DescID &id, GeData &t_data, DESCFLAGS_GET flags)
Bool   SetParameter (const DescID &id, const GeData &t_data, DESCFLAGS_SET flags)
DynamicDescription GetDynamicDescription ()
Bool   GetEnabling (const DescID &id, const GeData &t_data, DESCFLAGS_ENABLE flags, const BaseContainer *itemdesc)
Bool   TranslateDescID (const DescID &id, DescID &res_id, C4DAtom *&res_at)
UInt32   GetDirty ( DIRTYFLAGS flags) const
void  SetDirty ( DIRTYFLAGS flags)
UInt32   GetHDirty ( HDIRTYFLAGS mask) const
void  SetHDirty ( HDIRTYFLAGS mask)
-  Static Public Member Functions inherited from BaseObject
static BaseObject Alloc ( Int32 type)
static void  Free ( BaseObject *&bl)
-  Static Public Member Functions inherited from BaseList2D
static BaseList2D Alloc ( Int32 type)
static void  Free ( BaseList2D *&bl)
-  Static Public Attributes inherited from BaseList2D
static const Int32   SETBIT_FLAG_NODIRTY
static const Int32   SETBIT_FLAG_REMOVE

构造函数 & 析构函数文档编制

◆  LodObject()

LodObject () private

◆  ~LodObject()

~ LodObject () private

成员函数文档编制

◆  Alloc()

static LodObject * Alloc ( )
static

Allocates a LodObject . Destroy the allocated LodObject with Free() 。使用 AutoAlloc to automate the allocation and destruction based on scope.

返回
The allocated LodObject ,或 nullptr if the allocation failed.

◆  Free()

static void Free ( LodObject *&  op )
static

Destructs LodObjects allocated with Alloc() 。使用 AutoAlloc to automate the allocation and destruction based on scope.

参数
[in] op The LodObject to destruct. If the pointer is nullptr nothing happens. The pointer is assigned nullptr afterwards.

◆  GetShowControlDescID()

Bool GetShowControlDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID of the hide control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetManualModeObjectListDescID()

Bool GetManualModeObjectListDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID of the object list for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetSimplifyModeDescID()

Bool GetSimplifyModeDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID of the simplify mode for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetDecimateStrengthDescID()

Bool GetDecimateStrengthDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID of the decimation strength for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetPerObjectControlDescID()

Bool GetPerObjectControlDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID of the per object control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetNullDisplayDescID()

Bool GetNullDisplayDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID of the NullObject Display control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetNullRadiusDescID()

Bool GetNullRadiusDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID of the NullObject Radius control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetNullAspectRatioDescID()

Bool GetNullAspectRatioDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID of the NullObject Aspect Ratio control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetNullOrientationDescID()

Bool GetNullOrientationDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID for the NullObject Orientation control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetDisplayStModeDescID()

Bool GetDisplayStModeDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID for the Display Style Mode control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetDisplayShModeDescID()

Bool GetDisplayShModeDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID for the Display Shading Mode control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetDisplayBFCDescID()

Bool GetDisplayBFCDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID for the Display Backface Culling control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetDisplayTexDescID()

Bool GetDisplayTexDescID ( Int32   level ,
DescID resultId  
) const

Calculates the dynamic DescID for the Display Texture control for the passed LOD level .

参数
[in] level The LOD level.
[out] resultId The resulting DescID , if possible (mode and criteria are compatible with the requested parameter).
返回
true if DescID calculation successful, otherwise false .

◆  GetCurrentLevel()

Int32 GetCurrentLevel ( ) const

Queries the current LOD level.

返回
The current LOD level index, or NOTOK in error case.

◆  GetLevelCount()

Int32 GetLevelCount ( ) const

Queries the current number of LOD levels.

返回
The current LOD level count, or NOTOK in error case.

◆  GetCacheCount()

Int32 GetCacheCount ( ) const

Private .

◆  GetCacheObject()

BaseObject * GetCacheObject ( Int32   index ) const

Private .

◆  GetLevelDirty()

UInt32 GetLevelDirty ( ) const

Queries the dirty checksum for the level switch. Every time the level changes, the counter is increased.

注意
The LOD object internally creates a cache to speedup the switch between different levels.
返回
The LOD level dirty count.

◆  GetCacheDirty()

UInt32 GetCacheDirty ( ) const

Queries the dirty checksum for the cache creation. Every time the cache is rebuilt, the counter is increased.

注意
The LOD object internally creates a cache to speedup the switch between different levels.
返回
The LOD cache dirty count.