KFbxAnimCurveKFCurveKey Class Reference

#include <kfbxanimcurvekfcurve.h>
Inheritance diagram for KFbxAnimCurveKFCurveKey:
Inheritance graph
[legend]

List of all members.


Detailed Description

This is the base class implementing the Fbx animation function curves keys.

This class, for the time being, encapsulates the old KFCurveKey structure. However, in a near future, this will become the main animation curve key object of the SDK and the implementation is subject to change.

Definition at line 57 of file kfbxanimcurvekfcurve.h.


Public Member Functions

  KFbxAnimCurveKFCurveKey ()
  Default Constructor.
virtual  ~KFbxAnimCurveKFCurveKey ()
  Destructor.
  KFbxAnimCurveKFCurveKey (KTime pTime)
  KFbxAnimCurveKFCurveKey (KTime pTime, float pVal)
  KFbxAnimCurveKFCurveKey (KFbxAnimCurveKFCurveKey const &pFKey)
  Copy constructor.
  KFbxAnimCurveKFCurveKey (KFCurveKey const &pFKey)
  Constructor from KFCurveKey.
KFbxAnimCurveKeyImpl operator= (const KFbxAnimCurveKeyImpl &pFKey)
  Assignment operator.
KFbxAnimCurveKFCurveKey operator= (const KFbxAnimCurveKFCurveKey &pFKey)
  Assignment operator.
  operator KFCurveKey & ()
  Operator to convert this to its base class instance.
KFCurveKey GetKFCurveKey ()
  Get base class pointer.
virtual KTime  GetTime () const
  Get time value.
virtual void  SetTime (const KTime &pTime)
  Set time of key.
void  Set (KTime pTime, float pValue)
  Set time and value of key.
void  SetTCB (KTime pTime, float pValue, float pData0=0.0f, float pData1=0.0f, float pData2=0.0f)
  Set a key with cubic interpolation, TCB tangent mode.
float  GetValue () const
  Get key value.
void  SetValue (float pValue)
  Set key value.
KFbxAnimCurveDef::EInterpolationType  GetInterpolation () const
  Get key interpolation.
void  SetInterpolation (KFbxAnimCurveDef::EInterpolationType pInterpolation)
  Set key interpolation.
KFbxAnimCurveDef::ETangentMode  GetTangentMode (bool pIncludeOverrides=false) const
  Get tangent mode.
void  SetTangentMode (KFbxAnimCurveDef::ETangentMode pTangentMode)
  Set tangent mode.
KFbxAnimCurveDef::EWeightedMode  GetTangentWeightMode () const
  Get key tangent weight mode.
void  SetTangentWeightMode (KFbxAnimCurveDef::EWeightedMode pTangentWeightMode, KFbxAnimCurveDef::EWeightedMode pMask=KFbxAnimCurveDef::eWEIGHTED_ALL)
  Set key tangent weight mode as double value (cubic interpolation, non TCB tangent mode).
KFbxAnimCurveDef::EVelocityMode  GetTangentVelocityMode () const
  Get key tangent velocity mode.
void  SetTangentVelocityMode (KFbxAnimCurveDef::EVelocityMode pTangentVelocityMode, KFbxAnimCurveDef::EVelocityMode pMask=KFbxAnimCurveDef::eVELOCITY_ALL)
  Set key tangent velocity mode as double value (cubic interpolation, non TCB tangent mode).
KFbxAnimCurveDef::EConstantMode  GetConstantMode () const
  Get key constant mode.
void  SetConstantMode (KFbxAnimCurveDef::EConstantMode pMode)
  Set constant mode.
float  GetDataFloat (KFbxAnimCurveDef::EKFbxAnimCurveDataIndex pIndex) const
  Get data float.
void  SetDataFloat (KFbxAnimCurveDef::EKFbxAnimCurveDataIndex pIndex, float pValue)
  Set data float.
void  SetTangentVisibility (KFbxAnimCurveDef::ETangentVisibility pVisibility)
  Set tangent visibility mode.
KFbxAnimCurveDef::ETangentVisibility  GetTangentVisibility () const
  Return tangent visibility mode.
void  SetBreak (bool pVal)
  Set/Unset Break tangent Only valid for User and Auto keys.
bool  GetBreak () const
  Get if tangent is break Only valid for User and Auto keys.

Static Public Member Functions

static KFbxAnimCurveKeyImpl AllocatorFct ()
static KFbxAnimCurveKeyImpl CopyAllocatorFct (KFbxAnimCurveKeyImpl *pImpl)
static void  DeallocatorFct (KFbxAnimCurveKeyImpl *pImpl)

Constructor & Destructor Documentation

KFbxAnimCurveKFCurveKey (  )  [inline]

Default Constructor.

Definition at line 80 of file kfbxanimcurvekfcurve.h.

virtual ~KFbxAnimCurveKFCurveKey (  )  [inline, virtual]

Destructor.

Definition at line 89 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveKFCurveKey ( KTime  pTime  )  [inline]

Definition at line 94 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveKFCurveKey ( KTime  pTime,
float  pVal  
) [inline]

Definition at line 100 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveKFCurveKey ( KFbxAnimCurveKFCurveKey const &  pFKey  )  [inline]

Copy constructor.

Parameters:
pFKey  KFbxAnimCurveKFCurveKey instance to be copied.

Definition at line 110 of file kfbxanimcurvekfcurve.h.

References mKey.

KFbxAnimCurveKFCurveKey ( KFCurveKey const &  pFKey  )  [inline]

Constructor from KFCurveKey.

Parameters:
pFKey  KFCurveKey instance to be copied.

Definition at line 119 of file kfbxanimcurvekfcurve.h.


Member Function Documentation

static KFbxAnimCurveKeyImpl* AllocatorFct (  )  [inline, static]

Definition at line 63 of file kfbxanimcurvekfcurve.h.

static KFbxAnimCurveKeyImpl* CopyAllocatorFct ( KFbxAnimCurveKeyImpl pImpl  )  [inline, static]

Definition at line 68 of file kfbxanimcurvekfcurve.h.

static void DeallocatorFct ( KFbxAnimCurveKeyImpl pImpl  )  [inline, static]

Definition at line 73 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveKeyImpl& operator= ( const KFbxAnimCurveKeyImpl pFKey  )  [inline, virtual]

Assignment operator.

Implements KFbxAnimCurveKeyImpl.

Definition at line 127 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveKFCurveKey& operator= ( const KFbxAnimCurveKFCurveKey pFKey  )  [inline]

Assignment operator.

Definition at line 135 of file kfbxanimcurvekfcurve.h.

References GetTime(), and mKey.

operator KFCurveKey & (  )  [inline]

Operator to convert this to its base class instance.

Definition at line 144 of file kfbxanimcurvekfcurve.h.

KFCurveKey* GetKFCurveKey (  )  [inline]

Get base class pointer.

Returns:
Base class pointer.

Definition at line 152 of file kfbxanimcurvekfcurve.h.

virtual KTime GetTime (  )  const [inline, virtual]

Get time value.

Returns:
Time value.

Definition at line 160 of file kfbxanimcurvekfcurve.h.

References KFCurveKey::GetTime().

Referenced by operator=().

virtual void SetTime ( const KTime pTime  )  [inline, virtual]

Set time of key.

Parameters:
pTime  New time of this key.

Definition at line 168 of file kfbxanimcurvekfcurve.h.

References KTime::SetTime().

void Set ( KTime  pTime,
float  pValue  
) [inline, virtual]

Set time and value of key.

Parameters:
pTime  New time of this key.
pValue  New value of this key.

Implements KFbxAnimCurveKeyImpl.

Definition at line 177 of file kfbxanimcurvekfcurve.h.

void SetTCB ( KTime  pTime,
float  pValue,
float  pData0 = 0.0f,
float  pData1 = 0.0f,
float  pData2 = 0.0f  
) [inline, virtual]

Set a key with cubic interpolation, TCB tangent mode.

Parameters:
pTime  Key time.
pValue  Key value.
pData0  Tension.
pData1  Continuity.
pData2  Bias.

Implements KFbxAnimCurveKeyImpl.

Definition at line 189 of file kfbxanimcurvekfcurve.h.

float GetValue (  )  const [inline, virtual]

Get key value.

Returns:
Key value.

Implements KFbxAnimCurveKeyImpl.

Definition at line 197 of file kfbxanimcurvekfcurve.h.

void SetValue ( float  pValue  )  [inline, virtual]

Set key value.

Parameters:
pValue  Key value to set.

Implements KFbxAnimCurveKeyImpl.

Definition at line 205 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveDef::EInterpolationType GetInterpolation (  )  const [inline, virtual]

Get key interpolation.

Returns:
Key interpolation.

Implements KFbxAnimCurveKeyImpl.

Definition at line 213 of file kfbxanimcurvekfcurve.h.

void SetInterpolation ( KFbxAnimCurveDef::EInterpolationType  pInterpolation  )  [inline, virtual]

Set key interpolation.

Parameters:
pInterpolation  Interpolation type to set.

Implements KFbxAnimCurveKeyImpl.

Definition at line 221 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveDef::ETangentMode GetTangentMode ( bool  pIncludeOverrides = false  )  const [inline, virtual]

Get tangent mode.

Returns:
Tangent mode.

Implements KFbxAnimCurveKeyImpl.

Definition at line 229 of file kfbxanimcurvekfcurve.h.

void SetTangentMode ( KFbxAnimCurveDef::ETangentMode  pTangentMode  )  [inline, virtual]

Set tangent mode.

Parameters:
pTangentMode  Tangent mode to set.

Implements KFbxAnimCurveKeyImpl.

Definition at line 237 of file kfbxanimcurvekfcurve.h.

References KFbxAnimCurveDef::eTANGENT_GENERIC_TIME_INDEPENDENT.

KFbxAnimCurveDef::EWeightedMode GetTangentWeightMode (  )  const [inline, virtual]

Get key tangent weight mode.

Warning: This method is meaningful for cubic interpolation only. Tangent weight modes are: KFCURVE_WEIGHTED_NONE, KFCURVE_WEIGHTED_RIGHT, KFCURVE_WEIGHTED_NEXT_LEFT, KFCURVE_WEIGHTED_ALL

Implements KFbxAnimCurveKeyImpl.

Definition at line 250 of file kfbxanimcurvekfcurve.h.

void SetTangentWeightMode ( KFbxAnimCurveDef::EWeightedMode  pTangentWeightMode,
KFbxAnimCurveDef::EWeightedMode  pMask = KFbxAnimCurveDef::eWEIGHTED_ALL  
) [inline, virtual]

Set key tangent weight mode as double value (cubic interpolation, non TCB tangent mode).

Warning: This method is meaningful for cubic interpolation only.

Parameters:
pTangentWeightMode  Weight mode KFCURVE_WEIGHTED_NONE KFCURVE_WEIGHTED_RIGHT KFCURVE_WEIGHTED_NEXT_LEFT KFCURVE_WEIGHTED_ALL
pMask  Used to select the affected tangents KFCURVE_WEIGHTED_RIGHT KFCURVE_WEIGHTED_NEXT_LEFT KFCURVE_WEIGHTED_ALL

Implements KFbxAnimCurveKeyImpl.

Definition at line 267 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveDef::EVelocityMode GetTangentVelocityMode (  )  const [inline, virtual]

Get key tangent velocity mode.

Warning: This method is meaningful for cubic interpolation only. Tangent weight modes are: KFCURVE_VELOCITY_NONE, KFCURVE_VELOCITY_RIGHT, KFCURVE_VELOCITY_NEXT_LEFT, KFCURVE_VELOCITY_ALL

Implements KFbxAnimCurveKeyImpl.

Definition at line 280 of file kfbxanimcurvekfcurve.h.

void SetTangentVelocityMode ( KFbxAnimCurveDef::EVelocityMode  pTangentVelocityMode,
KFbxAnimCurveDef::EVelocityMode  pMask = KFbxAnimCurveDef::eVELOCITY_ALL  
) [inline, virtual]

Set key tangent velocity mode as double value (cubic interpolation, non TCB tangent mode).

Warning: This method is meaningful for cubic interpolation only.

Parameters:
pTangentVelocityMode  Weight mode KFCURVE_VELOCITY_NONE KFCURVE_VELOCITY_RIGHT KFCURVE_VELOCITY_NEXT_LEFT KFCURVE_VELOCITY_ALL
pMask  Used to select the affected tangents KFCURVE_VELOCITY_RIGHT KFCURVE_VELOCITY_NEXT_LEFT KFCURVE_VELOCITY_ALL

Implements KFbxAnimCurveKeyImpl.

Definition at line 297 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveDef::EConstantMode GetConstantMode (  )  const [inline, virtual]

Get key constant mode.

Warning: This method is meaningful for constant interpolation only. Using this method for non constant interpolated key will return unpredicted value. Constant modes are: KFCURVE_CONSTANT_STANDARD KFCURVE_CONSTANT_NEXT

Returns:
Key constant mode.

Implements KFbxAnimCurveKeyImpl.

Definition at line 309 of file kfbxanimcurvekfcurve.h.

void SetConstantMode ( KFbxAnimCurveDef::EConstantMode  pMode  )  [inline, virtual]

Set constant mode.

Parameters:
pMode  Constant mode to set.

Implements KFbxAnimCurveKeyImpl.

Definition at line 317 of file kfbxanimcurvekfcurve.h.

float GetDataFloat ( KFbxAnimCurveDef::EKFbxAnimCurveDataIndex  pIndex  )  const [inline, virtual]

Get data float.

Parameters:
pIndex  Data index, dependent on the key tangent mode.
Returns:
Data value.

Implements KFbxAnimCurveKeyImpl.

Definition at line 326 of file kfbxanimcurvekfcurve.h.

References KFbxAnimCurveDef::eTANGENT_TCB, and KFbxAnimCurveKeyImpl::GetTangentMode().

void SetDataFloat ( KFbxAnimCurveDef::EKFbxAnimCurveDataIndex  pIndex,
float  pValue  
) [inline, virtual]

Set data float.

Parameters:
pIndex  Data index, dependent on the key tangent mode.
pValue  Data value to set.

Implements KFbxAnimCurveKeyImpl.

Definition at line 346 of file kfbxanimcurvekfcurve.h.

References KFbxAnimCurveDef::eTANGENT_TCB, and KFbxAnimCurveKeyImpl::GetTangentMode().

void SetTangentVisibility ( KFbxAnimCurveDef::ETangentVisibility  pVisibility  )  [inline, virtual]

Set tangent visibility mode.

Warning: This method is meaningful for cubic interpolation only.

Parameters:
pVisibility  Tangent visibility mode. Tangent visibility modes are: KFCURVE_TANGEANT_SHOW_NONE KFCURVE_TANGEANT_SHOW_LEFT KFCURVE_TANGEANT_SHOW_RIGHT

Implements KFbxAnimCurveKeyImpl.

Definition at line 369 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveDef::ETangentVisibility GetTangentVisibility (  )  const [inline, virtual]

Return tangent visibility mode.

Warning: This method is meaningful for cubic interpolation only.

Returns:
Tangent visibility mode. Tangent visibility modes are: KFCURVE_TANGEANT_SHOW_NONE KFCURVE_TANGEANT_SHOW_LEFT KFCURVE_TANGEANT_SHOW_RIGHT

Implements KFbxAnimCurveKeyImpl.

Definition at line 381 of file kfbxanimcurvekfcurve.h.

void SetBreak ( bool  pVal  )  [inline, virtual]

Set/Unset Break tangent Only valid for User and Auto keys.

Parameters:
pVal  The break flag.

Implements KFbxAnimCurveKeyImpl.

Definition at line 390 of file kfbxanimcurvekfcurve.h.

bool GetBreak (  )  const [inline, virtual]

Get if tangent is break Only valid for User and Auto keys.

Implements KFbxAnimCurveKeyImpl.

Definition at line 398 of file kfbxanimcurvekfcurve.h.

KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey
KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey KFbxAnimCurveKFCurveKey