c4d_baseeffectordata.h File Reference

Classes

struct   Dpoint
struct   Ipoint
class   MDArray< TYPE >
class   MoData
struct   GetMoDataMessage
struct   GetMGSelectionMessage
struct   MGWeightData
struct   GetMGWeightMessage
struct   Effector_PassData
struct   Effector_PassValueData
struct   EffectorStrengths
struct   EffectorDataStruct
class   EffectorData

Macros

#define  Obaseeffector
#define  Obasemogen
#define  ID_BASE_EDEFORMER
#define  ID_MOTAGDATA
#define  ID_MOBAKETAG
#define  Tmgselection
#define  Tmgweight
#define  BASEEFFECTORLIB_ID
#define  MODATALIB_ID
#define  MSG_EXECUTE_EFFECTOR
#define  MSG_SAMPLE_EFFECTOR_VALUE
#define  MSG_GET_MODATA
#define  MSG_GET_MODATASELECTION
#define  MSG_GET_MODATAWEIGHTS
#define  BC_ID_MODATAINDEX
#define  BC_ID_MODATATAGINDEX
#define  BC_ID_CLONE_DATA
#define  MSG_DISABLE_DELAY_EFFECTOR
#define  MSG_ENABLE_DELAY_EFFECTOR
#define  MSG_MOGRAPH_REEVALUATE
#define  BLEND_COUNT
#define  EFFECTORFLAGS_HASFALLOFF
#define  EFFECTORFLAGS_TIMEDEPENDENT
#define  EFFECTORFLAGS_CAMERADEPENDENT
#define  MOGENFLAG_CLONE_ON
#define  MOGENFLAG_DISABLE
#define  MOGENFLAG_BORN
#define  MOGENFLAG_MODATASET
#define  MOGENFLAG_COLORSET
#define  MOGENFLAG_TIMESET
#define  MDARRAYFLAG_NOTSEENBYEFFECTOR
#define  MDARRAYFLAG_SEPERATECOMPONENTS
#define  MDARRAYFLAG_2DVECTOR

Enumerations

enum   MDDIRTY {
   NONE ,
   ALL ,
   ARRAYCOUNT ,
   COUNT ,
   DATA
}
enum   MD_TYPE {
   MD_NONE ,
   MD_CHAR ,
   MD_UCHAR ,
   MD_LONG ,
   MD_ULONG ,
   MD_LLONG ,
   MD_MATRIX ,
   MD_COLOR ,
   MD_VECTOR ,
   MD_NORMAL ,
   MD_REAL ,
   MD_BOOL
}
enum   {
   MODATA_MATRIX ,
   MODATA_COLOR ,
   MODATA_SIZE ,
   MODATA_UVW ,
   MODATA_FLAGS ,
   MODATA_WEIGHT ,
   MODATA_CLONE ,
   MODATA_TIME ,
   MODATA_LASTMAT ,
   MODATA_STARTMAT ,
   MODATA_ALT_INDEX ,
   MODATA_FALLOFF_WGT ,
   MODATA_SPLINE_SEGMENT ,
   MODATA_GROWTH
}
enum   { ID_MODATA_PASS }

函数

enum MDDIRTY   MAXON_ENUM_FLAGS ( MDDIRTY )
enum MD_TYPE   MAXON_ENUM_LIST ( MD_TYPE )
GeData   GetMoDataDefault ( Int32 id)
MD_TYPE   GetMoDataDefaultType ( Int32 id)
Bool   RegisterEffectorPlugin ( Int32 id, const maxon::String &str, Int32 info, DataAllocator *g, const maxon::String &description, BaseBitmap *icon, Int32 disklevel)

变量

  NONE
  ALL
  ARRAYCOUNT
  COUNT
  DATA
  MD_NONE
  MD_CHAR
  MD_UCHAR
  MD_LONG
  MD_ULONG
  MD_LLONG
  MD_MATRIX
  MD_COLOR
  MD_VECTOR
  MD_NORMAL
  MD_REAL
  MD_BOOL
enum { ... }   MAXON_ENUM_LIST

Macro Definition Documentation

◆  BLEND_COUNT

#define BLEND_COUNT

The number of values that a value driven effector has to calculate; normally hard coded (do not change).

Function Documentation

◆  GetMoDataDefault()

GeData GetMoDataDefault ( Int32   id )

Retrieves the default value for the specified MoData array id .

参数
[in] id The MoData array ID: MODATA_IDS
返回
The MoData default value.

◆  GetMoDataDefaultType()

MD_TYPE GetMoDataDefaultType ( Int32   id )

Retrieves the default type for the specified MoData array id .

参数
[in] id The MoData array ID: MODATA_IDS
返回
The default type: MD_TYPE

◆  RegisterEffectorPlugin()

Bool RegisterEffectorPlugin ( Int32   id ,
const maxon::String str ,
Int32   info ,
DataAllocator g ,
const maxon::String description ,
BaseBitmap icon ,
Int32   disklevel  
)

Registers an effector plugin.

参数
[in] id A unique plugin ID. Must be obtained from http://www.plugincafe.com
[in] str The name of the plugin.
To affect the order that plugins are displayed in menus add "#$n" as a prefix to this name, where n is a number.
Lower numbers are displayed before higher numbers. If name is "--" it will show up as a menu separator.
[in] info The plugin info flags: OBJECT PLUGINFLAG
[in] g The allocator for the effector plugin. This is a pointer to a function that creates a new instance of EffectorData with NewObj() .
[in] description The name of the description resource file to use for the effector plugin without .res extension, for example "oespline" .
The name has to be unique, i.e. "Tdisplay" cannot be used for 2 different descriptions. See 描述 Resource for more information.
[in] icon The icon for the command. The bitmap is copied.
The icon should be of size 32x 32 , but will be scaled if needed.
It must also be 24 bits and should if possible include an alpha to support pattern backgrounds.
[in] disklevel The plugin level is similar to a version number. The default level is 0 .
Increase this for new revisions of a plugin to allow for forward and backward compatibility.

As an example you may have updated a plugin. If you now need to write additional information for new settings or changed types for old settings you can increase the level.
During loading either a 0 is passed (if the file was written by the old plugin) or 1 (if the file was written by the new plugin). This allows to easily write/read new values.
For forward and backward compatibility to work any existing read order from a given level must not be changed. Cinema 4D skips any new settings automatically if they have not been read.

disklevel is only useful if variables are written/read in NodeData::Write / NodeData::Read .
返回
true if the effector plugin was registered, otherwise false .

Variable Documentation

◆  NONE

NONE

◆  ALL

ALL

◆  ARRAYCOUNT

ARRAYCOUNT

Array count itself changed (number of different arrays rather than length of arrays).

◆  COUNT

COUNT

Length of the arrays changed.

◆  DATA

DATA

Data in the arrays changed, must be manually set.

◆  MD_NONE

MD_NONE

None.

◆  MD_CHAR

MD_CHAR

Char type.

◆  MD_UCHAR

MD_UCHAR

UChar type.

◆  MD_LONG

MD_LONG

Int32 type.

◆  MD_ULONG

MD_ULONG

UInt32 type.

◆  MD_LLONG

MD_LLONG

Int64 type.

◆  MD_MATRIX

MD_MATRIX

矩阵 type.

◆  MD_COLOR

MD_COLOR

Color type ( 向量 ).

◆  MD_VECTOR

MD_VECTOR

向量 type.

◆  MD_NORMAL

MD_NORMAL

Normal type ( 向量 ).

◆  MD_REAL

MD_REAL

Float type.

◆  MD_BOOL

MD_BOOL

Bool type.