FieldData Class Reference

abstract

#include <c4d_fieldplugin.h>

Inheritance diagram for FieldData:
Inheritance graph
[ legend ]

公共成员函数

  FieldData ()
virtual maxon::Result < void >  InitSampling ( FieldObject &op, const FieldInfo &info, FieldShared &shared)
virtual void  FreeSampling ( FieldObject &op, const FieldInfo &info, FieldShared &shared)
virtual maxon::Result < void >  Sample (const FieldObject &op, const FieldInput &inputs, FieldOutputBlock &outputs, const FieldInfo &info) const =0
virtual FIELDOBJECT_FLAG   GetFieldFlags (const FieldObject &op, BaseDocument *doc) const
-  Public Member Functions inherited from ObjectData
virtual void  GetDimension ( BaseObject *op, 向量 *mp, 向量 *rad)
virtual DRAWRESULT   Draw ( BaseObject *op, DRAWPASS drawpass, BaseDraw *bd, BaseDrawHelp *bh)
virtual DRAWRESULT   DrawShadow ( BaseObject *op, BaseDraw *bd, BaseDrawHelp *bh)
virtual Int32   DetectHandle ( BaseObject *op, BaseDraw *bd, Int32 x, Int32 y, QUALIFIER qualifier)
virtual Bool   MoveHandle ( BaseObject *op, BaseObject *undo, const 向量 &mouse_pos, Int32 hit_id, QUALIFIER qualifier, BaseDraw *bd)
virtual Bool   AddToExecution ( BaseObject *op, PriorityList *list)
virtual EXECUTIONRESULT   Execute ( BaseObject *op, BaseDocument *doc, BaseThread *bt, Int32 priority, EXECUTIONFLAGS flags)
virtual void  GetModelingAxis ( BaseObject *op, BaseDocument *doc, 矩阵 &axis)
virtual BaseObject GetVirtualObjects ( BaseObject *op, HierarchyHelp *hh)
virtual Bool   ModifyObject ( BaseObject *mod, BaseDocument *doc, BaseObject *op, const 矩阵 &op_mg, const 矩阵 &mod_mg, Float lod, Int32 flags, BaseThread *thread)
virtual void  CheckDirty ( BaseObject *op, BaseDocument *doc)
virtual SplineObject GetContour ( BaseObject *op, BaseDocument *doc, Float lod, BaseThread *bt)
virtual void  ModifyParticles ( BaseObject *op, Particle *pp, BaseParticle *ss, Int32 pcnt, Float diff)
virtual Int32   GetHandleCount ( BaseObject *op)
virtual void  GetHandle ( BaseObject *op, Int32 i, HandleInfo &info)
virtual void  SetHandle ( BaseObject *op, Int32 i, 向量 p, const HandleInfo &info)
-  Public Member Functions inherited from NodeData
  NodeData ()
GeListNode Get (void) const
virtual Bool   消息 ( GeListNode *node, Int32 type, void *data)
virtual void  GetBubbleHelp ( GeListNode *node, maxon::String &str)
virtual BaseDocument GetDocument ( GeListNode *node)
virtual Int32   GetBranchInfo ( GeListNode *node, BranchInfo *info, Int32 max, GETBRANCHINFO flags)
virtual Bool   IsInstanceOf (const GeListNode *node, Int32 type) const
virtual Bool   IsDocumentRelated (const GeListNode *node, Bool &docrelated) const
virtual Bool   Init ( GeListNode *node)
virtual void  Free ( GeListNode *node)
virtual Bool   读取 ( GeListNode *node, HyperFile *hf, Int32 level)
virtual Bool   Write ( GeListNode *node, HyperFile *hf)
virtual Bool   CopyTo ( NodeData *dest, GeListNode *snode, GeListNode *dnode, COPYFLAGS flags, AliasTrans *trn)
virtual Bool   GetDDescription ( GeListNode *node, 描述 *description, DESCFLAGS_DESC &flags)
virtual Bool   GetDParameter ( GeListNode *node, const DescID &id, GeData &t_data, DESCFLAGS_GET &flags)
virtual Bool   SetDParameter ( GeListNode *node, const DescID &id, const GeData &t_data, DESCFLAGS_SET &flags)
virtual Bool   GetDEnabling ( GeListNode *node, const DescID &id, const GeData &t_data, DESCFLAGS_ENABLE flags, const BaseContainer *itemdesc)
virtual Bool   TranslateDescID ( GeListNode *node, const DescID &id, DescID &res_id, C4DAtom *&res_at)
-  Public Member Functions inherited from BaseData
  BaseData ()
virtual  ~BaseData (void)
void  Destructor (void)

私有成员函数

  MAXON_DISALLOW_COPY_AND_ASSIGN ( FieldData )

Additional Inherited Members

-  Protected Attributes inherited from NodeData
GeListNode private_link

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

◆  FieldData()

FieldData ( )

Default constructor.

由于
R17.032

成员函数文档编制

◆  MAXON_DISALLOW_COPY_AND_ASSIGN()

MAXON_DISALLOW_COPY_AND_ASSIGN ( FieldData   )
private

◆  InitSampling()

virtual maxon::Result <void> InitSampling ( FieldObject op ,
const FieldInfo info ,
FieldShared shared  
)
virtual

@markprivate - Initialization block, invoked prior to any sampling.

参数
[in] op The object, convenience function equivalent to Get() .
[in] info The information detailing thread count, points information etc. Caller is responsible for validity of content.
[in,out] shared Shared data between layers/fields.
返回
OK on success, error will cancel sampling.

◆  FreeSampling()

virtual void FreeSampling ( FieldObject op ,
const FieldInfo info ,
FieldShared shared  
)
virtual

@markprivate - Free any temporarily stored data after sampling has finished.

参数
[in] op The object, convenience function equivalent to Get() .
[in] info The information.
[in,out] shared Shared data between layers/fields.

◆  Sample()

virtual maxon::Result <void> Sample ( const FieldObject op ,
const FieldInput inputs ,
FieldOutputBlock outputs ,
const FieldInfo info  
) const
pure virtual

@markprivate - Sampling invocation. The points are no longer just vectors, but also contain other information that may be relevant such as normal direction, the points must be iterated over and the result filled with the output values. The flags determine which values are being requested by the caller. InitializeSampling must be called first and the points data must be valid. NOTE: Sample does not receive the SharedData. If a layer needs access to it, it can keep a reference on it or copy parts of it in InitSampling.

参数
[in] op The object, convenience function equivalent to Get() .
[in] inputs The points to sample at owned by the caller.
[out] outputs The result array, owned by the caller.
[in] info The information.
返回
OK on success.

◆  GetFieldFlags()

virtual FIELDOBJECT_FLAG GetFieldFlags ( const FieldObject op ,
BaseDocument doc  
) const
virtual

Gets Field objects flags.

参数
[in] op The field object, convenience function equivalent to Get() .
[in] doc The current document.
返回
The field flags see @FIELDOBJECT_FLAG.