#include <c4d_tagdata.h>
详细描述
A data class for creating tag plugins.
Tag plugins appear in the Tag menu of the Object Manager and can be attached to objects.
使用
RegisterTagPlugin()
to register a tag plugin.
公共成员函数
|
virtual
Bool
|
Draw
(
BaseTag
*tag,
BaseObject
*op,
BaseDraw
*bd,
BaseDrawHelp
*bh)
|
virtual
EXECUTIONRESULT
|
Execute
(
BaseTag
*tag,
BaseDocument
*doc,
BaseObject
*op,
BaseThread
*bt,
Int32
priority,
EXECUTIONFLAGS
flags)
|
virtual
Bool
|
AddToExecution
(
BaseTag
*tag,
PriorityList
*list)
|
virtual
Bool
|
GetModifiedObjects
(
BaseTag
*tag,
BaseDocument
*doc,
BaseObject
*&op,
Bool
&pluginownedop, const
矩阵
&op_mg,
Float
lod,
Int32
flags,
BaseThread
*thread)
|
|
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)
|
|
BaseData
()
|
virtual
|
~BaseData
(void)
|
void
|
Destructor
(void)
|
成员函数文档编制
◆
Draw()
Called when the display is updated to draw visual elements of the tag in the 3D view.
-
注意
-
This function is called in a thread context. See the
important information
about threading.
-
To get the current drawpass call
bd
->
GetDrawPass()
.
-
警告
-
Only draw in
DRAWPASS::HIGHLIGHTS
if you really know what you are doing. Otherwise always check the drawpass and then do not draw if it is
DRAWPASS::HIGHLIGHTS
.
-
参数
-
[in]
|
tag
|
The
BaseTag
connected with the
TagData
instance. Equal to
static_cast
<
TagData
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed shader.
|
[in]
|
op
|
The host object of the tag.
Cinema 4D
owns the pointed object.
|
[in]
|
bd
|
The editor's view. The caller owns the pointed view.
|
[in]
|
bh
|
The helper for the editor's view. The caller owns the pointed base draw helper.
|
-
返回
-
true
if successful, otherwise
false
.