PointObject Class Reference

#include <c4d_baseobject.h>

Inheritance diagram for PointObject:

Detailed Description

Represents a Point object. Abstract, so instantiate either PolygonObject or SplineObject.

Public Member Functions

BaseSelectGetPointS (void)
 
BaseSelectGetPointH (void)
 
const VectorGetPointR (void) const
 
VectorGetPointW (void)
 
Int32 GetPointCount (void) const
 
Float32CalcVertexMap (BaseObject *modifier)
 
Bool ResizeObject (Int32 pcnt)
 
void IncreaseBoundingBox (Int32 cnt, Vector *v)
 
- Public Member Functions inherited from BaseObject
BaseObjectGetNext (void)
 
BaseObjectGetPred (void)
 
BaseObjectGetUp (void)
 
BaseObjectGetDown (void)
 
BaseObjectGetDownLast (void)
 
Vector GetAbsPos () const
 
void SetAbsPos (const Vector &v)
 
Vector GetAbsScale () const
 
void SetAbsScale (const Vector &v)
 
Vector GetAbsRot () const
 
void SetAbsRot (const Vector &v)
 
Vector GetFrozenPos () const
 
void SetFrozenPos (const Vector &v)
 
Vector GetFrozenScale () const
 
void SetFrozenScale (const Vector &v)
 
Vector GetFrozenRot () const
 
void SetFrozenRot (const Vector &v)
 
Vector GetRelPos () const
 
void SetRelPos (const Vector &v)
 
Vector GetRelScale () const
 
void SetRelScale (const Vector &v)
 
Vector GetRelRot () const
 
void SetRelRot (const Vector &v)
 
const MatrixGetMl (void) const
 
void SetMl (const Matrix &m)
 
Matrix GetFrozenMln () const
 
Matrix GetRelMln () const
 
Matrix GetRelMl () const
 
void SetRelMl (const Matrix &m)
 
Matrix GetMg () const
 
void SetMg (const Matrix &m)
 
Matrix GetMln () const
 
Matrix GetMgn () const
 
Matrix GetUpMg () const
 
void CopyMatrixTo (BaseObject *dst)
 
Vector GetMp (void)
 
Vector GetRad (void)
 
Int32 GetEditorMode (void)
 
void SetEditorMode (Int32 mode)
 
Int32 GetRenderMode (void)
 
void SetRenderMode (Int32 mode)
 
Bool GetDeformMode (void)
 
void SetDeformMode (Bool mode)
 
Int32 GetUniqueIP (void)
 
void SetUniqueIP (Int32 ip)
 
BaseTagGetFirstTag (void)
 
BaseTagGetLastTag (void)
 
BaseTagGetTag (Int32 type, Int32 nr=0)
 
const void * GetTagDataR (Int32 type, Int32 nr=0) const
 
void * GetTagDataW (Int32 type, Int32 nr=0)
 
Int32 GetTagDataCount (Int32 type) const
 
BaseTagMakeTag (Int32 type, BaseTag *pred=nullptr)
 
VariableTagMakeVariableTag (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)
 
BaseObjectGetCache (HierarchyHelp *hh=nullptr)
 
BaseObjectGetDeformCache (void)
 
LineObjectGetIsoparm (void)
 
void SetIsoparm (LineObject *l)
 
BaseObjectGetCacheParent (void)
 
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 MatrixGetModelingAxis (BaseDocument *doc)
 
void SetModelingAxis (const Matrix &m)
 
BaseObjectGetAndCheckHierarchyClone (HierarchyHelp *hh, BaseObject *op, HIERARCHYCLONEFLAGS flags, Bool *dirty, AliasTrans *trans, Bool allchildren)
 
BaseObjectGetHierarchyClone (HierarchyHelp *hh, BaseObject *op, HIERARCHYCLONEFLAGS flags, Bool *dirty, AliasTrans *trans)
 
BaseObjectGetHierarchyClone (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, Vector *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)
 
SplineObjectGetRealSpline (void)
 
Float GetVisibility (Float parent)
 
Bool SearchHierarchy (BaseObject *op)
 
BaseObjectGetOrigin (Bool safe)
 
void SetOrigin (BaseObject *origin)
 
BaseObjectGetTopOrigin (Bool parent, Bool safe)
 
BaseObjectGetEditObject (BaseObject **psds, DISPLAYEDITSTATE state)
 
void RemoveFromCache (void)
 

Private Member Functions

 PointObject ()
 
 ~PointObject ()
 

Additional Inherited Members

- Static Public Member Functions inherited from BaseObject
static BaseObjectAlloc (Int32 type)
 
static void Free (BaseObject *&bl)
 
- Static Public Member Functions inherited from BaseList2D
static BaseList2DAlloc (Int32 type)
 
static void Free (BaseList2D *&bl)
 

Constructor & Destructor Documentation

PointObject ( )
private
~PointObject ( )
private

Member Function Documentation

BaseSelect* GetPointS ( void  )

Gets the selected points.

Returns
The selected points. The point object owns the pointed base select.
BaseSelect* GetPointH ( void  )

Gets the hidden points.

Returns
The hidden points. The point object owns the pointed base select.
const Vector* GetPointR ( void  ) const

Gets the start of the read-only points array.

Note
While this function may sound trivial and cheap, internally it is not. For performance reasons, it is not recommended to use this function inside a loop or inside a loop condition.
Returns
The address of the read-only points array. The point object owns the pointed points array.
Vector* GetPointW ( void  )

Gets the start of the writable points array.

Note
While this function may sound trivial and cheap, internally it is not. For performance reasons, it is not recommended to use this function inside a loop or inside a loop condition.
Returns
The address of the writable points array. The point object owns the pointed points array.
Int32 GetPointCount ( void  ) const

Gets the number of points in the object.

Note
While this function may sound trivial and cheap, internally it is not. For performance reasons, it is not recommended to use this function inside a loop or inside a loop condition.
Returns
The point count in the points array.
Float32* CalcVertexMap ( BaseObject modifier)

Gets an array of vertex weights.

Warning
The returned array must be freed afterwards with DeleteMem()
Parameters
[in]modifierThe modifier object. The caller owns the pointed modifier.
Returns
The address of the weights array, or nullptr. The caller owns the pointed array.
Bool ResizeObject ( Int32  pcnt)

Changes the number of points in the object.

Parameters
[in]pcntThe new number of points.
Returns
true if the number of points was changed successfully, otherwise false.
void IncreaseBoundingBox ( Int32  cnt,
Vector v 
)

Increases the bounding box of the object without making the object dirty.
Adds the vectors from v[0] to v[cnt-1] to the bounding box of the object.

Parameters
[in]cntThe vector count in array v.
[in]vThe Vector array. The caller owns the pointed array.