Public Member Functions | Protected Member Functions

FbxCharacterPose Class Reference

This reference page is linked to from the following overview topics: FBX Scenes, Merging Two Scenes, List of Python Fbx classes.


Search for all occurrences

Detailed Description

A character pose is a character and an associated hierarchy of nodes.

Only the default position of the nodes is considered, the animation data is ignored.

You can access the content of a character pose, using the functions FbxCharacterPose::GetOffset(), FbxCharacterPose::GetLocalPosition(), and FbxCharacterPose::GetGlobalPosition(). Their source code is provided inline as examples on how to access the character pose data.

To create a character pose, You must first create a hierarchy of nodes under the root node provided by function FbxCharacterPose::GetRootNode(). Then, feed this hierarchy of nodes into the character returned by function FbxCharacterPose::GetCharacter(). Offsets are set in the character links. Local positions are set using FbxNode::SetDefaultT(), FbxNode::SetDefaultR(), and FbxNode::SetDefaultS().

To set local positions from global positions:

  1. Declare lCharacterPose as a valid pointer to a FbxCharacterPose;
  2. Call lCharacterPose->GetRootNode()->SetLocalStateId(0, true);
  3. Call lCharacterPose->GetRootNode()->SetGlobalStateId(1, true);
  4. Call FbxNode::SetGlobalState() for all nodes found in the hierarchy under lCharacterPose->GetRootNode();
  5. Call lCharacterPose->GetRootNode()->ComputeLocalState(1, true);
  6. Call lCharacterPose->GetRootNode()->SetCurrentTakeFromLocalState(FBXSDK_TIME_ZERO, true).

Definition at line 48 of file fbxcharacterpose.h.

#include <fbxcharacterpose.h>

Inheritance diagram for FbxCharacterPose:
Inheritance graph
[legend]

List of all members.

Public Member Functions

void Reset ()
 Reset to an empty character pose.
FbxNodeGetRootNode () const
 Get the root node.
FbxCharacterGetCharacter () const
 Get the character.
bool GetOffset (FbxCharacter::ENodeId pCharacterNodeId, FbxAMatrix &pOffset) const
 Get offset matrix for a given character node.
bool GetLocalPosition (FbxCharacter::ENodeId pCharacterNodeId, FbxVector4 &pLocalT, FbxVector4 &pLocalR, FbxVector4 &pLocalS) const
 Get local position for a given character node.
bool GetGlobalPosition (FbxCharacter::ENodeId pCharacterNodeId, FbxAMatrix &pGlobalPosition) const
 Get global position for a given character node.
FbxSceneGetPoseScene () const
 Retrieve the pose scene used by this character pose.
virtual FbxObjectCopy (const FbxObject &pObject)
 Copy an object content into this object.

Protected Member Functions

virtual void Construct (const FbxCharacterPose *pFrom)
virtual void Destruct (bool pRecursive)
 Optional destructor override, automatically called by default destructor.

Member Function Documentation

void Reset ( )

Reset to an empty character pose.

FbxNode* GetRootNode ( ) const

Get the root node.

Returns:
Pointer to the root node.
FbxCharacter* GetCharacter ( ) const

Get the character.

Returns:
Pointer to the character.
bool GetOffset ( FbxCharacter::ENodeId  pCharacterNodeId,
FbxAMatrix pOffset 
) const

Get offset matrix for a given character node.

Parameters:
pCharacterNodeIdCharacter Node ID.
pOffsetReceives offset matrix.
Returns:
true if successful, false otherwise.
bool GetLocalPosition ( FbxCharacter::ENodeId  pCharacterNodeId,
FbxVector4 pLocalT,
FbxVector4 pLocalR,
FbxVector4 pLocalS 
) const

Get local position for a given character node.

Parameters:
pCharacterNodeIdCharacter Node ID.
pLocalTReceives local translation vector.
pLocalRReceives local rotation vector.
pLocalSReceives local scaling vector.
Returns:
true if successful, false otherwise.
bool GetGlobalPosition ( FbxCharacter::ENodeId  pCharacterNodeId,
FbxAMatrix pGlobalPosition 
) const

Get global position for a given character node.

Parameters:
pCharacterNodeIdCharacter Node ID.
pGlobalPositionReceives global position.
Returns:
true if successful, false otherwise.
FbxScene* GetPoseScene ( ) const

Retrieve the pose scene used by this character pose.

Returns:
The pose's scene (this is a different scene than the scene the character pose is in).
virtual FbxObject& Copy ( const FbxObject pObject) [virtual]

Copy an object content into this object.

Parameters:
pObjectThe source object to copy data from.
Returns:
Returns the destination object being modified by the source.
Remarks:
This function replace the assignment operator (operator=). It will copy all property values and the name. Connections are NOT copied.

Reimplemented from FbxObject.

virtual void Construct ( const FbxCharacterPose pFrom) [protected, virtual]
virtual void Destruct ( bool  pRecursive) [protected, virtual]

Optional destructor override, automatically called by default destructor.

Parameters:
pRecursiveIf true, children objects should be destroyed as well.
Remarks:
In case it is decided to override this function, do not forget to call ParentClass::Destruct(pResursive) at the end.

Reimplemented from FbxObject.


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

FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose
FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose FbxCharacterPose