KFbxAnimEvaluator Class Reference

#include <kfbxanimevaluator.h>
Inheritance diagram for KFbxAnimEvaluator:
Inheritance graph
[legend]

List of all members.


Detailed Description

This class is an abstract representation of an evaluator object to evaluate animated scenes.

Definition at line 52 of file kfbxanimevaluator.h.


Public Member Functions

void  SetContext (KFbxAnimStack *pAnimStack)
  Set the evaluator context (animation stack to evaluate).
KFbxAnimStack GetContext ()
  Get the evaluator context (animation stack to evaluate).
KFbxXMatrix GetNodeGlobalTransform (KFbxNode *pNode, KTime pTime=KTIME_INFINITE, KFbxNode::EPivotSet pPivotSet=KFbxNode::eSOURCE_SET, bool pApplyTarget=false, bool pForceEval=false)
  Get a node's global transform matrix at the specified time.
KFbxXMatrix GetNodeLocalTransform (KFbxNode *pNode, KTime pTime=KTIME_INFINITE, KFbxNode::EPivotSet pPivotSet=KFbxNode::eSOURCE_SET, bool pApplyTarget=false, bool pForceEval=false)
  Get a node's local transform matrix at the specified time.
KFbxAnimCurveNode GetPropertyValue (KFbxProperty &pProperty, KTime pTime, bool pForceEval=false)
  Get a property's value at the specified time.
KTime  ValidateTime (KTime pTime)
  Validate if the given time value is within animation stack time span range.
KFbxXMatrix GetNodeGlobalTransformFast (KFbxNode *pNode, int &pDirectIndex, KTime pTime=KTIME_INFINITE, KFbxNode::EPivotSet pPivotSet=KFbxNode::eSOURCE_SET, bool pApplyTarget=false, bool pForceEval=false)
  Get a node's global transform matrix at the specified time.
KFbxXMatrix GetNodeLocalTransformFast (KFbxNode *pNode, int &pDirectIndex, KTime pTime=KTIME_INFINITE, KFbxNode::EPivotSet pPivotSet=KFbxNode::eSOURCE_SET, bool pApplyTarget=false, bool pForceEval=false)
  Get a node's local transform matrix at the specified time.
KFbxAnimCurveNode GetPropertyValueFast (KFbxProperty &pProperty, int &pDirectIndex, KTime pTime=KTIME_INFINITE, bool pForceEval=false)
  Get a property's value at the specified time.
void  InvalidateNode (KFbxNode *pNode)
  Invalidate a node evaluation state cache.
void  InvalidateProperty (KFbxProperty &pProperty)
  Invalidate a property evaluation state cache.

Member Function Documentation

void SetContext ( KFbxAnimStack pAnimStack  ) 

Set the evaluator context (animation stack to evaluate).

Parameters:
pAnimStack  Animation Stack to use with this evaluator.

KFbxAnimStack* GetContext (  ) 

Get the evaluator context (animation stack to evaluate).

Remarks:
If no context is set, the first one found in the scene is used if available.

KFbxXMatrix& GetNodeGlobalTransform ( KFbxNode pNode,
KTime  pTime = KTIME_INFINITE,
KFbxNode::EPivotSet  pPivotSet = KFbxNode::eSOURCE_SET,
bool  pApplyTarget = false,
bool  pForceEval = false  
)

Get a node's global transform matrix at the specified time.

Parameters:
pNode  The transform node to evaluate.
pTime  The time used for evaluate. If KTIME_INFINITE is used, this returns the default value, without animation curves evaluation.
pPivotSet  The pivot set to take into account
pApplyTarget  Applies the necessary transform to align into the target node
pForceEval  Force the evaluator to refresh the evaluation state cache even if its already up-to-date.
Returns:
The resulting global transform of the specified node for the specified time.

Referenced by KFbxCharacterPose::GetGlobalPosition().

KFbxXMatrix& GetNodeLocalTransform ( KFbxNode pNode,
KTime  pTime = KTIME_INFINITE,
KFbxNode::EPivotSet  pPivotSet = KFbxNode::eSOURCE_SET,
bool  pApplyTarget = false,
bool  pForceEval = false  
)

Get a node's local transform matrix at the specified time.

Parameters:
pNode  The transform node to evaluate.
pTime  The time used for evaluate. If KTIME_INFINITE is used, this returns the default value, without animation curves evaluation.
pPivotSet  The pivot set to take into account
pApplyTarget  Applies the necessary transform to align into the target node
pForceEval  Force the evaluator to refresh the evaluation state cache even if its already up-to-date.
Returns:
The resulting local transform of the specified node for the specified time.

Referenced by KFbxCharacterPose::GetLocalPosition().

KFbxAnimCurveNode& GetPropertyValue ( KFbxProperty pProperty,
KTime  pTime,
bool  pForceEval = false  
)

Get a property's value at the specified time.

Parameters:
pProperty  The property to evaluate.
pTime  The time used for evaluate.
pForceEval  Force the evaluator to refresh the evaluation state cache even if its already up-to-date.
Returns:
The property value at the specified time stored in a curve node structure for easier access of complex types.

KTime ValidateTime ( KTime  pTime  ) 

Validate if the given time value is within animation stack time span range.

Parameters:
pTime  The time value to validate.
Returns:
The new validated time, limited by the animation stack time span range.
Remarks:
If no animation stack are found, time zero is returned.

KFbxXMatrix& GetNodeGlobalTransformFast ( KFbxNode pNode,
int pDirectIndex,
KTime  pTime = KTIME_INFINITE,
KFbxNode::EPivotSet  pPivotSet = KFbxNode::eSOURCE_SET,
bool  pApplyTarget = false,
bool  pForceEval = false  
)

Get a node's global transform matrix at the specified time.

Parameters:
pNode  The transform node to evaluate.
pDirectIndex  The index used to retrieve the information in the evaluation state. The first time you evaluate a specific node, it must be set to -1. Then the returned index can be used for a quicker access to the evaluation state array.
pTime  The time used for evaluate. If KTIME_INFINITE is used, this returns the default value, without animation curves evaluation.
pPivotSet  The pivot set to take into account
pApplyTarget  Applies the necessary transform to align into the target node
pForceEval  Force the evaluator to refresh the evaluation state cache even if its already up-to-date.
Returns:
The resulting global transform of the specified node for the specified time.
Remarks:
If the scene change in the application, all direct indexes must be updated, and the evaluation state cache must be invalidated.

KFbxXMatrix& GetNodeLocalTransformFast ( KFbxNode pNode,
int pDirectIndex,
KTime  pTime = KTIME_INFINITE,
KFbxNode::EPivotSet  pPivotSet = KFbxNode::eSOURCE_SET,
bool  pApplyTarget = false,
bool  pForceEval = false  
)

Get a node's local transform matrix at the specified time.

Parameters:
pNode  The transform node to evaluate.
pDirectIndex  The index used to retrieve the information in the evaluation state. The first time you evaluate a specific node, it must be set to -1. Then the returned index can be used for a quicker access to the evaluation state array (no find).
pTime  The time used for evaluate. If KTIME_INFINITE is used, this returns the default value, without animation curves evaluation.
pPivotSet  The pivot set to take into account
pApplyTarget  Applies the necessary transform to align into the target node
pForceEval  Force the evaluator to refresh the evaluation state cache even if its already up-to-date.
Returns:
The resulting local transform of the specified node for the specified time.
Remarks:
If the scene change in the application, all direct indexes must be updated, and the evaluation state cache must be invalidated.

KFbxAnimCurveNode& GetPropertyValueFast ( KFbxProperty pProperty,
int pDirectIndex,
KTime  pTime = KTIME_INFINITE,
bool  pForceEval = false  
)

Get a property's value at the specified time.

Parameters:
pProperty  The property to evaluate.
pTime  The time used for evaluate.
pDirectIndex  The index used to retrieve the information in the evaluation state. The first time you evaluate a specific property, it must be set to -1. Then the returned index can be used for a quicker access to the evaluation state array.
pForceEval  Force the evaluator to refresh the evaluation state cache even if its already up-to-date.
Returns:
The property value at the specified time stored in a curve node structure for easier access of complex types.
Remarks:
If the scene change in the application, all direct indexes must be updated, and the evaluation state cache must be invalidated.

void InvalidateNode ( KFbxNode pNode  ) 

Invalidate a node evaluation state cache.

Parameters:
pNode  The node that needs to be re-evaluated in next evaluation.

void InvalidateProperty ( KFbxProperty pProperty  ) 

Invalidate a property evaluation state cache.

Parameters:
pProperty  The property that needs to be re-evaluated in next evaluation.
KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator
KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator KFbxAnimEvaluator