-
首页
-
C4D R23.110 C++ SDK
#include <c4d_canimation.h>
详细描述
Represents the animation key.
Can be inserted into the
curve
of a
track
.
-
注意
-
Has to be created with
Alloc()
and destroyed with
Free()
。使用
AutoAlloc
to automate the allocation and destruction based on scope.
Additional Inherited Members
|
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)
|
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)
|
构造函数 & 析构函数文档编制
◆
CKey()
◆
~CKey()
成员函数文档编制
◆
operator=()
const
CKey
& operator=
|
(
|
const
CKey
&
|
key
|
)
|
|
|
private
|
◆
Alloc()
Allocates a key. Destroy the allocated key with
Free()
。使用
AutoAlloc
to automate the allocation and destruction based on scope.
-
返回
-
The allocated key, or
nullptr
if the allocation failed.
◆
Free()
static void Free
|
(
|
CKey
*&
|
key
|
)
|
|
|
static
|
Destructs keys allocated with
Alloc()
。使用
AutoAlloc
to automate the allocation and destruction based on scope.
-
参数
-
[in,out]
|
key
|
The key to destruct. If the pointer is
nullptr
nothing happens. The pointer is assigned
nullptr
afterwards.
|
◆
GetTime()
Gets the time of the key.
-
返回
-
The time.
◆
SetTime()
Sets the time of the key.
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
t
|
The time to set.
|
◆
GetTimeLeft()
Gets the left time of the key.
-
返回
-
The left time.
◆
SetTimeLeft()
Sets the left time of the key.
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
t
|
The left time to set.
|
◆
GetTimeRight()
Gets the right time of the key.
-
返回
-
The right time.
◆
SetTimeRight()
Sets the right time of the key.
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
t
|
The right time to set.
|
◆
GetValue()
Float
GetValue
|
(
|
void
|
|
)
|
const
|
Gets the value of the key.
-
注意
-
使用
GetParameter()
to read non-real values.
范例:
Reading of PLA keys.
GeData
data;
if
(!key->GetParameter(
DescLevel
(
CK_PLA_DATA
,
CUSTOMDATATYPE_PLA
,0), data, 0))
return
false
;
PLAData
* pla = (
PLAData
*)data.
GetCustomDataType
(
CUSTOMDATATYPE_PLA
);
if
(pla==
nullptr
)
return
false
;
VariableTag
*ptag =
nullptr
,
*htag =
nullptr
;
pla->
GetVariableTags
(ptag, htag);
ptag
/
htag
contain the point/tangent information.
-
返回
-
The value.
◆
SetValue()
Sets the value of the key.
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
v
|
The value to set.
|
◆
GetGeData()
const
GeData
& GetGeData
|
(
|
void
|
|
)
|
const
|
Gets the data of the key.
-
返回
-
The data.
◆
SetGeData()
Sets the data of the key.
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
d
|
The new key data.
|
◆
GetValueLeft()
Float
GetValueLeft
|
(
|
void
|
|
)
|
const
|
Gets the left value of the key.
-
返回
-
The left value.
◆
SetValueLeft()
Sets the left value of the key.
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
v
|
The left value to set.
|
◆
GetValueRight()
Float
GetValueRight
|
(
|
void
|
|
)
|
const
|
Gets the right value of the key.
-
返回
-
The right value.
◆
SetValueRight()
Sets the right value of the key.
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
v
|
The right value to set.
|
◆
GetInterpolation()
Gets the interpolation type of the key.
-
返回
-
The interpolation type:
CINTERPOLATION
◆
SetInterpolation()
Sets the interpolation type of the key.
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
inter
|
The interpolation type to set:
CINTERPOLATION
|
◆
GetQuatInterpolation()
Gets the quaternion interpolation type of the key.
-
由于
-
R18
-
返回
-
The interpolation type:
ROTATIONINTERPOLATION_QUATERNION
◆
SetQuatInterpolation()
Sets the quaternion interpolation type of the key.
-
注意
-
Keys at the same time on other component curve will be modified.
-
由于
-
R18
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
inter
|
The interpolation type to set:
ROTATIONINTERPOLATION_QUATERNION
|
[in]
|
bUndo
|
true
to add the three rotation keys in the undo system, otherwise
false
.
|
◆
CopyDataTo()
Copies the key data to
dest
.
-
参数
-
[in]
|
destseq
|
The curve the destination key belongs to.
|
[in]
|
dest
|
The destination key.
|
[in]
|
trans
|
An alias translator for the operation. Can be
nullptr
. The caller owns the pointed object.
|
-
返回
-
true
if successful, otherwise
false
.
◆
GetClone()
Gets a copy of the key.
-
参数
-
[in]
|
trans
|
An alias translator for the operation. Can be
nullptr
. The caller owns the pointed alias translator.
|
-
返回
-
The cloned key. The caller owns the pointed key.
◆
GetTrack()
Gets the track of the key.
-
返回
-
The track.
◆
GetCurve()
Gets the curve of the key.
-
返回
-
The curve.
◆
FlushData()
Flushes the key: empties and resets data.
◆
GetAutomaticTangentMode()
CAUTOMODE
GetAutomaticTangentMode
|
(
|
void
|
|
)
|
const
|
Gets the AutoTangent mode of the key.
-
由于
-
R17.032
-
返回
-
The AutoTangent mode:
CAUTOMODE
◆
SetAutomaticTangentMode()
Sets the AutoTangent mode of the key.
-
由于
-
R17.032
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
autoMode
|
The AutoTangent mode to set:
CAUTOMODE
|
◆
SetTimeLeftAdjustValue()
Sets Time Left and adjusts Value so the angle stays the same.
-
由于
-
R17.032
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
t
|
The new left time to set.
|
-
返回
-
true
if successful.
false
if current Time Left is smaller than
FLT_MIN
and Value is not Zero (angle cannot stay the same).
◆
SetTimeRightAdjustValue()
Sets Time Right and adjusts Value so the angle stays the same.
-
由于
-
R17.032
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
t
|
The new right time to set.
|
-
返回
-
true
if successful.
false
if current Time Right is smaller than
FLT_MIN
and Value is not Zero (angle cannot stay the same).
◆
GetKeyPreset()
Gets the preset mode of the key.
-
由于
-
R18.027
-
返回
-
The preset mode:
CKEYPRESET
◆
SetKeyPreset()
Sets the preset mode of the key.
-
由于
-
R18.027
-
参数
-
[in]
|
seq
|
The curve the key belongs to.
|
[in]
|
preset
|
The preset mode to set:
CKEYPRESET
|
@ CK_PLA_DATA
定义:
ckpla.h:8
#define CUSTOMDATATYPE_PLA
PLA custom data type ID.
定义:
customgui_pla.h:26
PLA custom data type (CUSTOMDATATYPE_PLA) for PLA tracks.
定义:
customgui_pla.h:34
Represents a level within a DescID.
定义:
lib_description.h:286
CustomDataType * GetCustomDataType(Int32 datatype) const
定义:
c4d_gedata.h:507
void GetVariableTags(PointTag *&ptag, TangentTag *&htag)