FBAnimationNode Class Reference


Detailed Description

Inheritance diagram for FBAnimationNode:

List of all members.

Public Member Functions

 __init__ (str pName=None, object pObject=None)
 Constructor.
 KeyAdd (FBTime pTime, float pData, FBInterpolation pInterpolation=kFBInterpolationCubic, FBTangentMode pTangentMode=kFBTangentModeAuto)
 Add a key to the animation node.
 KeyAdd (float pData, FBInterpolation pInterpolation=kFBInterpolationCubic, FBTangentMode pTangentMode=kFBTangentModeAuto)
 Add a key to the animation node at current time.
bool SetCandidate (float Data)
 Set the current candidate values for current time.
 SetBufferType (bool pGlobal)
 Set buffer type for ANIMATIONNODE_TYPE_LOCAL_TRANSLATION, ANIMATIONNODE_TYPE_LOCAL_ROTATION and ANIMATIONNODE_TYPE_LOCAL_SCALE.
 KeyCandidate (FBTime pTime=FBTime::Infinity)
 Keys the current candidate values if no time is specified, at current time.
int GetSizeOfData ()
 Get sizeof void Data Ptr.
int GetDataDoubleArrayCount ()
 If the DataPtr is of numeric value type ...
bool WriteData (float Data, FBEvaluateInfo pEvaluateInfo)
 Write data to animation node.
bool WriteGlobalData (float Data, FBEvaluateInfo pEvaluateInfo)
 Write global data to animation node.
bool ReadData (float Data, FBEvaluateInfo pEvaluateInfo)
 Read data from animation node.
bool ReadData (float Data, FBTime pTime)
 Read data from animation node.
bool ReadData (float Data)
 Read the last data evaluated for this animation node ...
bool Evaluate (float Data, FBTime pTime, bool pEvaluateCandidate=True)
 Evaluate the animation node data for a given time.
bool IsEvaluationRecursive (FBEvaluateInfo pEvaluateInfo)
 Return true if the animation node had valid data for pEvaluateInfo and read from this connector caused recursion for owner of this evaluation (works only for background evaluation).
 DisableIfNotWritten (FBEvaluateInfo pEvaluateInfo)
 AnimationNodeNotify is called on FBBox for every animation node that data was pulled by system.
bool IsKey ()
 Verifies if there is a key at the current.
 KeyRemove ()
 Remove key at current time.
 KeyRemoveAt (FBTime pTime)
 Remove key at the specified time.
FBAnimationNode GetAnimationToRecord ()
 Get animation node to record to.
FBAnimationNode GetAnimationToPlay ()
 Get animation node to play from.
FBTime ConvertGlobalToNodeTime (FBTime pKeyTime)
 Convert global time to node time.
FBTime ConvertNodeToGlobalTime (FBTime pKeyTime)
 Convert node time to global time.

Public Attributes

FBPropertyString Label
 Read Write Property: Label (UI Name).
FBPropertyString UserName
 Read Only Property: Name of animation node.
FBPropertyBase Reference
 Read Write Property: User-defined reference.
FBPropertyBase KeyCount
 Read Only Property: Number of keys.
FBPropertyFCurve FCurve
 Read Write Property: FCurve for animation.
FBPropertyBase Live
 Read Write Property: Is animation live?.
FBPropertyBase RecordMode
 Read Write Property: Is the node in recording mode (device connectors)?.
FBPropertyAnimationNode Parent
 Read Only Property: Parent animation node.
FBPropertyInterpolation DefaultInterpolation
 Read Write Property: Default type of interpolation.
FBPropertyListAnimationNode Nodes
 List: List of animation nodes.
FBPropertyEventAnimationNode OnChange
 Event: Called when the value of this property is modified.

Member Function Documentation

__init__ ( str  pName = None,
object  pObject = None 
)

Constructor.

Parameters:
pNameName of animation node (default is NULL).
pObjectFor internal use only (default is NULL).
Examples
UI/FCurveEditor.py, Tasks/ClearKeysOnSelectedModels.py, Tasks/TraversingRelationConstraint.py, Samples/FCurve/CopyAnimation.py
KeyAdd ( FBTime  pTime,
float  pData,
FBInterpolation  pInterpolation = kFBInterpolationCubic,
FBTangentMode  pTangentMode = kFBTangentModeAuto 
)

Add a key to the animation node.

Parameters:
pTimeTime to add key at.
pDataValue of data to add at pTime.
pInterpolationInterpolation type of the inserted key, default value is Cubic interpolation.
pTangentModeTangent calculation method of the inserted key, default value is Auto (Smooth).
KeyAdd ( float  pData,
FBInterpolation  pInterpolation = kFBInterpolationCubic,
FBTangentMode  pTangentMode = kFBTangentModeAuto 
)

Add a key to the animation node at current time.

Parameters:
pDataValue of data to add.
pInterpolationInterpolation type of the inserted key, default value is Cubic interpolation.
pTangentModeTangent calculation method of the inserted key, default value is Auto (Smooth).
bool SetCandidate ( float  Data)

Set the current candidate values for current time.

Returns:
true if successful.
SetBufferType ( bool  pGlobal)

Set buffer type for ANIMATIONNODE_TYPE_LOCAL_TRANSLATION, ANIMATIONNODE_TYPE_LOCAL_ROTATION and ANIMATIONNODE_TYPE_LOCAL_SCALE.

Parameters:
pGlobalIs buffer local or global.
KeyCandidate ( FBTime  pTime = FBTime::Infinity)

Keys the current candidate values if no time is specified, at current time.

Parameters:
pTimeTime at which to insert the key.
int GetSizeOfData ( )

Get sizeof void Data Ptr.

int GetDataDoubleArrayCount ( )

If the DataPtr is of numeric value type ...

get the size of the array ex: Light Intensity:1, Translation 3

Returns:
Size of DataPtr array.
bool WriteData ( float  Data,
FBEvaluateInfo  pEvaluateInfo 
)

Write data to animation node.

Parameters:
DataData to write to animation node.
pEvaluateInfoNode evaluation information (access to system and local time).
Returns:
true if successful.
bool WriteGlobalData ( float  Data,
FBEvaluateInfo  pEvaluateInfo 
)

Write global data to animation node.

Parameters:
DataData to write to animation node.
pEvaluateInfoNode evaluation information (access to system and local time).
Returns:
true if successful.
bool ReadData ( float  Data,
FBEvaluateInfo  pEvaluateInfo 
)

Read data from animation node.

Parameters:
DataData to read from animation node.
pEvaluateInfoNode evaluation information (access to system and local time).
Returns:
true if successful.
bool ReadData ( float  Data,
FBTime  pTime 
)

Read data from animation node.

Parameters:
DataData to read from animation node.
pTimeTime to read.
Returns:
true if successful.

This will launch a new evaluation buffer to read the data and therefore this call is only safe if it is executed from the main thread, e.g. within a tool. In all other cases, you should use ReadData( double *Data, FBEvaluateInfo* pEvalInfo );

bool ReadData ( float  Data)

Read the last data evaluated for this animation node ...

this call doesn't generate a pull on the connection attached to this AnimationNode. No validation is done on the pointer size. You must provide a buffer that is at least GetSizerOfData() size.

Parameters:
DataData to read from animation node.
Returns:
true if successful.
bool Evaluate ( float  Data,
FBTime  pTime,
bool  pEvaluateCandidate = True 
)

Evaluate the animation node data for a given time.

Parameters:
DataData to read from animation node.
pTimeTime to evaluate the node.
pEvaluateCandidateDo evaluate the candidate or not.
Returns:
Status of animation node.
bool IsEvaluationRecursive ( FBEvaluateInfo  pEvaluateInfo)

Return true if the animation node had valid data for pEvaluateInfo and read from this connector caused recursion for owner of this evaluation (works only for background evaluation).

DisableIfNotWritten ( FBEvaluateInfo  pEvaluateInfo)

AnimationNodeNotify is called on FBBox for every animation node that data was pulled by system.

Typically constraints are performing one evaluation per cycle (pEvaluationInfo->GetEvaluationID()) and write to output animation nodes. In case when not all output animation nodes were written, system may call AnimationNodeNotify again for unwritten animation nodes. To prevent this, we can call DisableIfNotWritten, which will make sure that AnimationNodeNotify not to be called again for give pEvaluationInfo (based on GetEvaluationID())

Parameters:
pEvaluateInfoEvaluation synchronization object (contains evaluation id).
Note:
Disabling of animation nodes that were not write is performed to save performance.
bool IsKey ( )

Verifies if there is a key at the current.

Returns:
true if there is a key at the current time.
KeyRemove ( )

Remove key at current time.

KeyRemoveAt ( FBTime  pTime)

Remove key at the specified time.

Parameters:
pTimeTime for the key
FBAnimationNode GetAnimationToRecord ( )

Get animation node to record to.

Returns:
Animation node to record to.
FBAnimationNode GetAnimationToPlay ( )

Get animation node to play from.

Returns:
Animation node to be played.
FBTime ConvertGlobalToNodeTime ( FBTime  pKeyTime)

Convert global time to node time.

(NOTE: Only used in the context of a story clip)

Parameters:
pKeyTimeTime of the key to convert.
FBTime ConvertNodeToGlobalTime ( FBTime  pKeyTime)

Convert node time to global time.

(NOTE: Only used in the context of a story clip)

Parameters:
pKeyTimeTime of the key to convert.

Member Data Documentation

Read Write Property: Label (UI Name).

Read Only Property: Name of animation node.

FBPropertyBase Reference

Read Write Property: User-defined reference.

FBPropertyBase KeyCount

Read Only Property: Number of keys.

FBPropertyFCurve FCurve

Read Write Property: FCurve for animation.

Examples
Tasks/StartKeysAtCurrentTime.py
FBPropertyBase Live

Read Write Property: Is animation live?.

FBPropertyBase RecordMode

Read Write Property: Is the node in recording mode (device connectors)?.

FBPropertyAnimationNode Parent

Read Only Property: Parent animation node.

FBPropertyInterpolation DefaultInterpolation

Read Write Property: Default type of interpolation.

FBPropertyEventAnimationNode OnChange

Event: Called when the value of this property is modified.


FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode
FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode FBAnimationNode