#include
<kfcurve.h>
For most motion capture curves, all the keys will have default attribute values. It is no necessary to store those default value for each key. See KFCurveKey for all function documentation.
Definition at line 410 of file kfcurve.h.
Public Member Functions |
|
KPriFCurveKeyAttr () | |
KFBX_FCURVE_INLINE void | Set (kFCurveInterpolation pInterpolation=KFCURVE_INTERPOLATION_CUBIC, kFCurveTangeantMode pTangentMode=KFCURVE_TANGEANT_AUTO, kFCurveDouble pData0=0.0, kFCurveDouble pData1=0.0, kFCurveTangeantWeightMode pTangentWeightMode=KFCURVE_WEIGHTED_NONE, kFCurveDouble pWeight0=KFCURVE_DEFAULT_WEIGHT, kFCurveDouble pWeight1=KFCURVE_DEFAULT_WEIGHT, kFCurveDouble pVelocity0=KFCURVE_DEFAULT_VELOCITY, kFCurveDouble pVelocity1=KFCURVE_DEFAULT_VELOCITY) |
KFBX_FCURVE_INLINE void | SetTCB (float pData0=0.0f, float pData1=0.0f, float pData2=0.0f) |
KFBX_FCURVE_INLINE void | Set (KFCurveKey &pSource) |
KFBX_FCURVE_INLINE kFCurveInterpolation |
GetInterpolation () const |
KFBX_FCURVE_INLINE void | SetInterpolation (kFCurveInterpolation pInterpolation) |
KFBX_FCURVE_INLINE kFCurveConstantMode |
GetConstantMode () const |
KFBX_FCURVE_INLINE kFCurveTangeantMode |
GetTangeantMode (bool pIncludeOverrides=false) const |
KFBX_FCURVE_INLINE kFCurveTangeantWeightMode |
GetTangeantWeightMode () const |
KFBX_FCURVE_INLINE kFCurveTangeantVelocityMode |
GetTangeantVelocityMode () const |
KFBX_FCURVE_INLINE void | SetConstantMode (kFCurveConstantMode pMode) |
KFBX_FCURVE_INLINE void | SetTangeantMode (kFCurveTangeantMode pTangent, bool pIgnoreAutoTimeIndepedentConversion=false) |
KFBX_FCURVE_INLINE void | SetTangeantWeightMode (kFCurveTangeantWeightMode pTangentWeightMode, kFCurveTangeantWeightMode pMask=KFCURVE_WEIGHTED_ALL) |
KFBX_FCURVE_INLINE void | SetTangentWeightAndAdjustTangent (EKFCurveDataIndex pIndex, kFCurveDouble pWeight) |
KFBX_FCURVE_INLINE void | SetTangeantVelocityMode (kFCurveTangeantVelocityMode pTangentVelocityMode, kFCurveTangeantVelocityMode pMask=KFCURVE_VELOCITY_ALL) |
KFBX_FCURVE_INLINE kFCurveDouble | GetDataDouble (EKFCurveDataIndex pIndex) const |
KFBX_FCURVE_INLINE void | SetDataDouble (EKFCurveDataIndex pIndex, kFCurveDouble pValue) |
KFBX_FCURVE_INLINE float | GetDataFloat (EKFCurveDataIndex pIndex) const |
KFBX_FCURVE_INLINE void | SetDataFloat (EKFCurveDataIndex pIndex, float pValue) |
KFBX_FCURVE_INLINE float * | GetDataPtr () const |
KFBX_FCURVE_INLINE void | SetSelected (bool pSelected) |
KFBX_FCURVE_INLINE bool | GetSelected () const |
KFBX_FCURVE_INLINE void | SetMarkedForManipulation (bool pMark) |
KFBX_FCURVE_INLINE bool | GetMarkedForManipulation () const |
KFBX_FCURVE_INLINE void | SetTangeantVisibility (kFCurveTangeantVisibility pVisibility) |
KFBX_FCURVE_INLINE kFCurveTangeantVisibility |
GetTangeantVisibility () const |
KFBX_FCURVE_INLINE void | SetBreak (bool pVal) |
KFBX_FCURVE_INLINE bool | GetBreak () const |
KFBX_FCURVE_INLINE bool | IsEqual (const KPriFCurveKeyAttr &pRsh) const |
KFBX_FCURVE_INLINE void | IncRefCount () |
KFBX_FCURVE_INLINE void | DecRefCount () |
KFBX_FCURVE_INLINE kUInt32 | GetRefCount () const |
Public Attributes |
|
kUInt32 | mFlags |
float | mData [4] |
kUInt32 | mRefCount |
KPriFCurveKeyAttr | ( | ) | [inline] |
KFBX_FCURVE_INLINE void Set | ( | kFCurveInterpolation | pInterpolation =
KFCURVE_INTERPOLATION_CUBIC , |
|
kFCurveTangeantMode | pTangentMode =
KFCURVE_TANGEANT_AUTO , |
|||
kFCurveDouble | pData0 = 0.0 , |
|||
kFCurveDouble | pData1 = 0.0 , |
|||
kFCurveTangeantWeightMode | pTangentWeightMode =
KFCURVE_WEIGHTED_NONE , |
|||
kFCurveDouble | pWeight0 =
KFCURVE_DEFAULT_WEIGHT , |
|||
kFCurveDouble | pWeight1 =
KFCURVE_DEFAULT_WEIGHT , |
|||
kFCurveDouble | pVelocity0 =
KFCURVE_DEFAULT_VELOCITY , |
|||
kFCurveDouble | pVelocity1 =
KFCURVE_DEFAULT_VELOCITY |
|||
) |
Definition at line 2441 of file kfcurve.h.
References K_ASSERT, KFCURVE_INTERPOLATION_CUBIC, KFCURVE_TANGEANT_SHOW_NONE, KFCURVE_TANGEANT_TCB, KFCURVEKEY_NEXT_LEFT_SLOPE, KFCURVEKEY_NEXT_LEFT_VELOCITY, KFCURVEKEY_NEXT_LEFT_WEIGHT, KFCURVEKEY_RIGHT_SLOPE, KFCURVEKEY_RIGHT_VELOCITY, KFCURVEKEY_RIGHT_WEIGHT, KFCurveKey::SetDataDouble(), KFCurveKey::SetInterpolation(), KFCurveKey::SetTangeantMode(), KFCurveKey::SetTangeantVisibility(), and KFCurveKey::SetTangeantWeightMode().
Referenced by KFCurve::KeySet().
KFBX_FCURVE_INLINE void SetTCB | ( | float | pData0 = 0.0f , |
|
float | pData1 = 0.0f , |
|||
float | pData2 = 0.0f |
|||
) |
Definition at line 2518 of file kfcurve.h.
References KFCURVE_INTERPOLATION_CUBIC, KFCURVE_TANGEANT_SHOW_NONE, KFCURVE_TANGEANT_TCB, KFCURVEKEY_TCB_BIAS, KFCURVEKEY_TCB_CONTINUITY, KFCURVEKEY_TCB_TENSION, SetDataFloat(), SetInterpolation(), SetTangeantMode(), and SetTangeantVisibility().
Referenced by KFCurve::KeySetTCB().
KFBX_FCURVE_INLINE void Set | ( | KFCurveKey & | pSource | ) |
KFBX_FCURVE_INLINE kFCurveInterpolation GetInterpolation | ( | ) | const |
Definition at line 2546 of file kfcurve.h.
References KFCURVE_INTERPOLATION_ALL, and mFlags.
Referenced by GetBreak(), KFCurve::KeyMultTangeant(), KFCurve::KeySetInterpolation(), SetBreak(), SetConstantMode(), and SetTangeantMode().
KFBX_FCURVE_INLINE void SetInterpolation | ( | kFCurveInterpolation | pInterpolation | ) |
Definition at line 2557 of file kfcurve.h.
References K_ASSERT_MSG, KFCURVE_INTERPOLATION_ALL, KFCURVE_INTERPOLATION_CONSTANT, KFCURVE_INTERPOLATION_CUBIC, KFCURVE_INTERPOLATION_LINEAR, KFCURVE_VELOCITY_NONE, KFCURVE_WEIGHTED_NONE, KFCURVEKEY_NEXT_LEFT_VELOCITY, KFCURVEKEY_NEXT_LEFT_WEIGHT, KFCURVEKEY_RIGHT_VELOCITY, KFCURVEKEY_RIGHT_WEIGHT, mFlags, SetDataDouble(), SetTangeantVelocityMode(), and SetTangeantWeightMode().
Referenced by KFCurve::KeySetInterpolation(), and SetTCB().
KFBX_FCURVE_INLINE kFCurveConstantMode GetConstantMode | ( | ) | const |
Definition at line 2600 of file kfcurve.h.
References KFCURVE_CONSTANT_ALL, and mFlags.
Referenced by KFCurve::KeySetConstantMode().
KFBX_FCURVE_INLINE kFCurveTangeantMode GetTangeantMode | ( | bool | pIncludeOverrides =
false |
) | const |
Definition at line 2610 of file kfcurve.h.
References KFCURVE_TANGEANT_ALL, KFCURVE_TANGEANT_TYPE_MASK, and mFlags.
Referenced by GetBreak(), KFCurve::KeyMultTangeant(), and SetBreak().
KFBX_FCURVE_INLINE kFCurveTangeantWeightMode GetTangeantWeightMode | ( | ) | const |
Definition at line 2680 of file kfcurve.h.
References KFCURVE_WEIGHTED_ALL, and mFlags.
KFBX_FCURVE_INLINE kFCurveTangeantVelocityMode GetTangeantVelocityMode | ( | ) | const |
Definition at line 2703 of file kfcurve.h.
References KFCURVE_VELOCITY_ALL, and mFlags.
KFBX_FCURVE_INLINE void SetConstantMode | ( | kFCurveConstantMode | pMode | ) |
Definition at line 2634 of file kfcurve.h.
References GetInterpolation(), K_ASSERT_MSG, KFCURVE_CONSTANT_ALL, KFCURVE_CONSTANT_NEXT, KFCURVE_CONSTANT_STANDARD, KFCURVE_INTERPOLATION_CONSTANT, and mFlags.
Referenced by KFCurve::KeySetConstantMode().
KFBX_FCURVE_INLINE void SetTangeantMode | ( | kFCurveTangeantMode | pTangent, | |
bool | pIgnoreAutoTimeIndepedentConversion
= false |
|||
) |
Definition at line 2652 of file kfcurve.h.
References GetInterpolation(), K_ASSERT_MSG, KFCURVE_CONSTANT_ALL, KFCURVE_GENERIC_TIME_INDEPENDENT, KFCURVE_INTERPOLATION_CONSTANT, KFCURVE_INTERPOLATION_CUBIC, KFCURVE_TANGEANT_ALL, KFCURVE_TANGEANT_AUTO, and mFlags.
Referenced by KFCurve::KeySetTangeantMode(), and SetTCB().
KFBX_FCURVE_INLINE void SetTangeantWeightMode | ( | kFCurveTangeantWeightMode | pTangentWeightMode, | |
kFCurveTangeantWeightMode | pMask =
KFCURVE_WEIGHTED_ALL |
|||
) |
Definition at line 2690 of file kfcurve.h.
References KFCURVE_WEIGHTED_ALL, and mFlags.
Referenced by KFCurve::KeySetTangeantWeightMode(), and SetInterpolation().
KFBX_FCURVE_INLINE void SetTangentWeightAndAdjustTangent | ( | EKFCurveDataIndex | pIndex, | |
kFCurveDouble | pWeight | |||
) |
Definition at line 2713 of file kfcurve.h.
References mData, and TangentWeightAndAdjustTangent().
KFBX_FCURVE_INLINE void SetTangeantVelocityMode | ( | kFCurveTangeantVelocityMode | pTangentVelocityMode, | |
kFCurveTangeantVelocityMode | pMask =
KFCURVE_VELOCITY_ALL |
|||
) |
Definition at line 2731 of file kfcurve.h.
References KFCURVE_VELOCITY_ALL, and mFlags.
Referenced by KFCurve::KeySetTangeantVelocityMode(), and SetInterpolation().
KFBX_FCURVE_INLINE kFCurveDouble GetDataDouble | ( | EKFCurveDataIndex | pIndex | ) | const |
Definition at line 2773 of file kfcurve.h.
References KFCURVEKEY_WEIGHTS, and mData.
Referenced by KFCurve::KeyMultTangeant(), and KFCurve::KeySetDataDouble().
KFBX_FCURVE_INLINE void SetDataDouble | ( | EKFCurveDataIndex | pIndex, | |
kFCurveDouble | pValue | |||
) |
Definition at line 2805 of file kfcurve.h.
References KFCURVEKEY_NEXT_LEFT_WEIGHT, KFCURVEKEY_RIGHT_WEIGHT, KFCURVEKEY_WEIGHTS, and mData.
Referenced by KFCurve::KeyMultTangeant(), KFCurve::KeySetDataDouble(), and SetInterpolation().
KFBX_FCURVE_INLINE float GetDataFloat | ( | EKFCurveDataIndex | pIndex | ) | const |
Definition at line 2855 of file kfcurve.h.
References mData.
Referenced by KFCurve::KeySetDataFloat().
KFBX_FCURVE_INLINE void SetDataFloat | ( | EKFCurveDataIndex | pIndex, | |
float | pValue | |||
) |
Definition at line 2865 of file kfcurve.h.
References mData.
Referenced by KFCurve::KeySetDataFloat(), and SetTCB().
KFBX_FCURVE_INLINE float * GetDataPtr | ( | ) | const |
KFBX_FCURVE_INLINE void SetSelected | ( | bool | pSelected | ) |
Definition at line 2963 of file kfcurve.h.
References KFCURVE_SELECT_ALL, KFCURVE_SELECT_POINT, and mFlags.
Referenced by KFCurve::KeySetSelected().
KFBX_FCURVE_INLINE bool GetSelected | ( | ) | const |
Definition at line 2973 of file kfcurve.h.
References KFCURVE_SELECT_POINT, and mFlags.
Referenced by KFCurve::KeySetSelected().
KFBX_FCURVE_INLINE void SetMarkedForManipulation | ( | bool | pMark | ) |
Definition at line 2983 of file kfcurve.h.
References KFCURVE_MARKED_ALL, KFCURVE_MARKED_FOR_MANIP, and mFlags.
Referenced by KFCurve::KeySetMarkedForManipulation().
KFBX_FCURVE_INLINE bool GetMarkedForManipulation | ( | ) | const |
Definition at line 2993 of file kfcurve.h.
References KFCURVE_MARKED_FOR_MANIP, and mFlags.
Referenced by KFCurve::KeySetMarkedForManipulation().
KFBX_FCURVE_INLINE void SetTangeantVisibility | ( | kFCurveTangeantVisibility | pVisibility | ) |
Definition at line 2743 of file kfcurve.h.
References K_ASSERT_MSG, KFCURVE_TANGEANT_SHOW_BOTH, KFCURVE_TANGEANT_SHOW_LEFT, KFCURVE_TANGEANT_SHOW_NONE, KFCURVE_TANGEANT_SHOW_RIGHT, and mFlags.
Referenced by KFCurve::KeySetTangeantVisibility(), and SetTCB().
KFBX_FCURVE_INLINE kFCurveTangeantVisibility GetTangeantVisibility | ( | ) | const |
Definition at line 2763 of file kfcurve.h.
References KFCURVE_TANGEANT_SHOW_BOTH, and mFlags.
Referenced by KFCurve::KeySetTangeantVisibility().
KFBX_FCURVE_INLINE void SetBreak | ( | bool | pVal | ) |
Definition at line 3017 of file kfcurve.h.
References GetInterpolation(), GetTangeantMode(), K_ASSERT_MSG, KFCURVE_GENERIC_BREAK, KFCURVE_INTERPOLATION_CUBIC, KFCURVE_TANGEANT_AUTO, KFCURVE_TANGEANT_AUTO_BREAK, KFCURVE_TANGEANT_BREAK, KFCURVE_TANGEANT_USER, and mFlags.
Referenced by KFCurve::KeySetBreak().
KFBX_FCURVE_INLINE bool GetBreak | ( | ) | const |
Definition at line 3047 of file kfcurve.h.
References GetInterpolation(), GetTangeantMode(), K_ASSERT_MSG, KFCURVE_GENERIC_BREAK, KFCURVE_INTERPOLATION_CUBIC, KFCURVE_TANGEANT_AUTO, KFCURVE_TANGEANT_AUTO_BREAK, KFCURVE_TANGEANT_BREAK, KFCURVE_TANGEANT_USER, and mFlags.
Referenced by KFCurve::KeySetBreak().
KFBX_FCURVE_INLINE bool IsEqual | ( | const KPriFCurveKeyAttr & | pRsh | ) | const |
KFBX_FCURVE_INLINE void IncRefCount | ( | ) |
KFBX_FCURVE_INLINE void DecRefCount | ( | ) |
KFBX_FCURVE_INLINE kUInt32 GetRefCount | ( | ) | const |
Definition at line 3105 of file kfcurve.h.
References mRefCount.
Referenced by KFCurve::KeySetTangeantMode(), KFCurve::KeySetTangeantVelocityMode(), and KFCurve::KeySetTangeantWeightMode().
Definition at line 458 of file kfcurve.h.
Referenced by GetBreak(), GetConstantMode(), GetInterpolation(), GetMarkedForManipulation(), GetSelected(), GetTangeantMode(), GetTangeantVelocityMode(), GetTangeantVisibility(), GetTangeantWeightMode(), IsEqual(), KFCurve::KeySet(), KFCurve::KeySetTangeantMode(), KFCurve::KeySetTangeantVelocityMode(), KFCurve::KeySetTangeantWeightMode(), SetBreak(), SetConstantMode(), SetInterpolation(), SetMarkedForManipulation(), SetSelected(), SetTangeantMode(), SetTangeantVelocityMode(), SetTangeantVisibility(), and SetTangeantWeightMode().
float mData[4] |
Definition at line 460 of file kfcurve.h.
Referenced by GetDataDouble(), GetDataFloat(), GetDataPtr(), IsEqual(), SetDataDouble(), SetDataFloat(), and SetTangentWeightAndAdjustTangent().
Definition at line 466 of file kfcurve.h.
Referenced by DecRefCount(), GetRefCount(), and IncRefCount().