FbxAnimStack Class Reference
 
 
 
FbxAnimStack Class Reference

#include <fbxanimstack.h>


Class Description

The Animation stack is a collection of animation layers.

The Fbx document can have one or more animation stacks. Each stack can be viewed as one "take" in the previous versions of the FBX SDK. The "stack" terminology comes from the fact that the object contains 1 to n animation layers that are evaluated according to their blending modes to produce a resulting animation for a given attribute.

Examples:

Animation/main.cxx, Common/AnimationUtility.cxx, Common/AnimationUtility.h, ExportScene01/main.cxx, ExportScene02/main.cxx, ExportScene03/main.cxx, ExportScene04/main.cxx, ImportScene/DisplayAnimation.cxx, Instances/main.cxx, Pivot/main.cxx, UI_Examples/CubeCreator/SDK_Utility.cxx, UserProperties/main.cxx, and ViewScene/SceneContext.cxx.

Definition at line 37 of file fbxanimstack.h.

Inheritance diagram for FbxAnimStack:
FbxCollection FbxObject FbxEmitter

List of all members.

Public Member Functions

void  Reset (const FbxTakeInfo *pTakeInfo=NULL)
  Reset the object time spans either to their default values or from the pTakeInfo structure, if provided.

Public Attributes

FbxPropertyT< FbxString Description
  This property stores a description string of this animation stack.
FbxPropertyT< FbxTime LocalStart
  This property stores the local time span "Start" time.
FbxPropertyT< FbxTime LocalStop
  This property stores the local time span "Stop" time.
FbxPropertyT< FbxTime ReferenceStart
  This property stores the reference time span "Start" time.
FbxPropertyT< FbxTime ReferenceStop
  This property stores the reference time span "Stop" time.

Utility functions.

FbxTimeSpan  GetLocalTimeSpan () const
  Get the LocalStart and LocalStop time properties as a FbxTimeSpan.
void  SetLocalTimeSpan (FbxTimeSpan &pTimeSpan)
  Set the LocalStart and LocalStop time properties from a FbxTimeSpan.
FbxTimeSpan  GetReferenceTimeSpan () const
  Get the ReferenceStart and ReferenceStop time properties as a FbxTimeSpan.
void  SetReferenceTimeSpan (FbxTimeSpan &pTimeSpan)
  Set the ReferenceStart and ReferenceStop time properties from a FbxTimeSpan.
FbxThumbnail GetTakeThumbnail ()
  Get the thumbnail image associated to this animation stack.
void  SetTakeThumbnail (FbxThumbnail *pTakeThumbnail)
  Set the take thumbnail.
bool  BakeLayers (FbxAnimEvaluator *pEvaluator, FbxTime pStart, FbxTime pStop, FbxTime pPeriod)
  Bake all the animation layers on the base layer.

Member Function Documentation

void Reset ( const FbxTakeInfo pTakeInfo = NULL )

Reset the object time spans either to their default values or from the pTakeInfo structure, if provided.

Parameters:
pTakeInfo The take info to be used during reset.
FbxTimeSpan GetLocalTimeSpan ( ) const

Get the LocalStart and LocalStop time properties as a FbxTimeSpan.

Returns:
The current local time span.
void SetLocalTimeSpan ( FbxTimeSpan pTimeSpan )

Set the LocalStart and LocalStop time properties from a FbxTimeSpan.

Parameters:
pTimeSpan The new local time span.
FbxTimeSpan GetReferenceTimeSpan ( ) const

Get the ReferenceStart and ReferenceStop time properties as a FbxTimeSpan.

Returns:
The current reference time span.
void SetReferenceTimeSpan ( FbxTimeSpan pTimeSpan )

Set the ReferenceStart and ReferenceStop time properties from a FbxTimeSpan.

Parameters:
pTimeSpan The new reference time span.
FbxThumbnail* GetTakeThumbnail ( )

Get the thumbnail image associated to this animation stack.

This method exists for legacy reasons. In the newer FBX files, there can only be one thumbnail image and it belongs to the FbxDocument.

Returns:
Pointer to the thumbnail.
void SetTakeThumbnail ( FbxThumbnail pTakeThumbnail )

Set the take thumbnail.

This method exists for legacy reasons. In the newer FBX files, there can only be one thumbnail image and it belongs to the FbxDocument.

Parameters:
pTakeThumbnail The referenced thumbnail object.
bool BakeLayers ( FbxAnimEvaluator pEvaluator,
FbxTime  pStart,
FbxTime  pStop,
FbxTime  pPeriod 
)

Bake all the animation layers on the base layer.

This function will process all the properties on every animation layer and generate a re-sampled set of animation keys (representing the layers' evaluated result) on the base layer. Once this operation is completed successfully, all the layers (except the base one) are destroyed. Properties that are only defined on the base layer will remain unaffected by the re-sampling. The stack local timespan is updated with the overall animation range.

Parameters:
pEvaluator The layer evaluator. This is the engine that evaluates the overall result of any given property according to the layers flags.
pStart The start time of the re-sampling range.
pStop The stop time of the re-sampling range.
pPeriod The time increment for the re-sampling.
Returns:
true if the operation was successful and false in case of errors.
Remarks:
If this AnimStack contains only one AnimLayer, the function will return false and do nothing.

Member Data Documentation

This property stores a description string of this animation stack.

This string can be used to display, in a human readable format, information relative to this animation stack object. Default value is "".

Remarks:
The applications using the FBX SDK are not required to manipulate this information.
Examples:
Animation/main.cxx.

Definition at line 53 of file fbxanimstack.h.

This property stores the local time span "Start" time.

This "start" time should be seen as a time marker. Typically it would represent the whole animation starting time but its use (and update) is left to the calling application (with one exception occurring in the BakeLayers). The FBX SDK does not use this value internally and only guarantees that it will be stored to the FBX file and retrieved from it.

Default value is 0.

Definition at line 63 of file fbxanimstack.h.

This property stores the local time span "Stop" time.

This "stop" time should be seen as a time marker. Typically it would represent the whole animation ending time but its use (and update) is left to the calling application (with one exception occurring in the BakeLayers). The FBX SDK does not use this value internally and only guarantees that it will be stored to the FBX file and retrieved from it.

Default value is 0

Examples:
Animation/main.cxx.

Definition at line 73 of file fbxanimstack.h.

This property stores the reference time span "Start" time.

This reference start time is another time marker that can be used by the calling application. The FBX SDK never uses it and only guarantees that this value is stored in the FBX file and retrieved from it.

Default value is 0

Definition at line 81 of file fbxanimstack.h.

This property stores the reference time span "Stop" time.

This reference stop time is another time marker that can be used by the calling application. The FBX SDK never uses it and only guarantees that this value is stored in the FBX file and retrieved from it.

Default value is 0

Definition at line 89 of file fbxanimstack.h.


The documentation for this class was generated from the following file: