Public Types | Public Member Functions | Static Public Member Functions | Friends

FbxControlSet Class Reference

This reference page is linked to from the following overview topics: List of Python Fbx classes.


Search for all occurrences

Detailed Description

This class contains all methods to either set-up an exported control rig or query information on an imported control rig.

A Control rig is a character manipulation tool that lets you change the position and orientation of a character to create or alter animation.

This class also contains some methods to manipulate the FbxEffector and FbxControlSetLink.

The FbxControlSet class contains FK rig (Forward Kinematics) and IK rig (Inverse Kinematics) animation. The FK rig is represented by a list of nodes while the IK rig is represented by a list of effectors.

You can access the FK rig with the FbxControlSetLink class, using the functions FbxControlSet::SetControlSetLink() and FbxControlSet::GetControlSetLink().

You can access the IK rig with the FbxEffector class, using the functions FbxControlSet::SetEffector() and FbxControlSet::GetEffector().

See also:
FbxEffector, FbxControlSetLink

Definition at line 184 of file fbxcontrolset.h.

#include <fbxcontrolset.h>

List of all members.

Public Types

enum  EType { eNone, eFkIk, eIkOnly }
 

Control rig type.

More...

Public Member Functions

void Reset ()
 Reset to default values.
void SetType (EType pType)
 Set type as given.
EType GetType () const
 Get type.
void SetUseAxis (bool pUseAxis)
 Set use axis flag as given.
bool GetUseAxis () const
 Get use axis flag.
void SetLockTransform (bool pLockTransform)
 Set lock transform flag as given.
bool GetLockTransform () const
 Get lock transform flag.
void SetLock3DPick (bool pLock3DPick)
 Set lock 3D pick flag as given.
bool GetLock3DPick () const
 Get lock 3D pick flag.
bool SetControlSetLink (FbxCharacter::ENodeId pCharacterNodeId, const FbxControlSetLink &pControlSetLink)
 Set a control set link for a character node ID.
bool GetControlSetLink (FbxCharacter::ENodeId pCharacterNodeId, FbxControlSetLink *pControlSetLink=NULL) const
 Get the control set link associated with a character node ID.
bool SetEffector (FbxEffector::ENodeId pEffectorNodeId, FbxEffector pEffector)
 Set an effector node for an effector node ID.
bool GetEffector (FbxEffector::ENodeId pEffectorNodeId, FbxEffector *pEffector=NULL)
 Get the effector associated with an effector node ID.
bool SetEffectorAux (FbxEffector::ENodeId pEffectorNodeId, FbxNode *pNode, FbxEffector::ESetId pEffectorSetId=FbxEffector::eAux1Set)
 Set an auxiliary effector node for an effector node ID.
bool GetEffectorAux (FbxEffector::ENodeId pEffectorNodeId, FbxNode **pNode=NULL, FbxEffector::ESetId pEffectorSetId=FbxEffector::eAux1Set) const
 Get the auxiliary effector associated with an effector node ID.
void FromPlug (FbxControlSetPlug *pPlug)
void ToPlug (FbxControlSetPlug *pPlug)

Static Public Member Functions

static char * GetEffectorNodeName (FbxEffector::ENodeId pEffectorNodeId)
 Get the name associated with an effector node ID.
static FbxEffector::ENodeId GetEffectorNodeId (char *pEffectorNodeName)
 Get ID associated with an effector node name.

Friends

class FbxCharacter
class FbxNode

Member Enumeration Documentation

enum EType

Control rig type.

  • eNone No Control rig.
  • eFkIk Both an FK rig and IK rig.
  • eIkOnly Only an IK rig.
Enumerator:
eNone 
eFkIk 
eIkOnly 

Definition at line 197 of file fbxcontrolset.h.


Member Function Documentation

void Reset ( )

Reset to default values.

Reset all effector and control set links.

void SetType ( EType  pType)

Set type as given.

Parameters:
pTypeThe given type.
EType GetType ( ) const

Get type.

Returns:
The gotten type.
void SetUseAxis ( bool  pUseAxis)

Set use axis flag as given.

Parameters:
pUseAxisThe given use axis flag.
bool GetUseAxis ( ) const

Get use axis flag.

Returns:
The gotten use axis flag.
void SetLockTransform ( bool  pLockTransform)

Set lock transform flag as given.

Parameters:
pLockTransformThe given lock transform flag.
bool GetLockTransform ( ) const

Get lock transform flag.

Returns:
The gotten lock transform flag.
void SetLock3DPick ( bool  pLock3DPick)

Set lock 3D pick flag as given.

Parameters:
pLock3DPickThe given lock 3D pick flag.
bool GetLock3DPick ( ) const

Get lock 3D pick flag.

Returns:
The gotten lock 3D pick flag.
bool SetControlSetLink ( FbxCharacter::ENodeId  pCharacterNodeId,
const FbxControlSetLink pControlSetLink 
)

Set a control set link for a character node ID.

Parameters:
pCharacterNodeIdCharacter node ID.
pControlSetLinkControl set link to be associated with the Character node ID.
Returns:
true if successful, false otherwise.
Remarks:
You should avoid setting a control set link for eCharacterLeftFloor, eCharacterRightFloor, eCharacterLeftHandFloor, eCharacterRightHandFloor, eCharacterProps0, eCharacterProps1, eCharacterProps2, eCharacterProps3 or eCharacterProps4. None of these nodes are part of a control set.
bool GetControlSetLink ( FbxCharacter::ENodeId  pCharacterNodeId,
FbxControlSetLink pControlSetLink = NULL 
) const

Get the control set link associated with a character node ID.

Parameters:
pCharacterNodeIdRequested character node ID.
pControlSetLinkOptional pointer that returns the control set link if the function succeeds.
Returns:
true if successful, false otherwise.
Remarks:
You should avoid getting a control set link for eCharacterLeftFloor, eCharacterRightFloor, eCharacterLeftHandFloor, eCharacterRightHandFloor, eCharacterProps0, eCharacterProps1, eCharacterProps2, eCharacterProps3 or eCharacterProps4. None of these nodes are part of a control set.
bool SetEffector ( FbxEffector::ENodeId  pEffectorNodeId,
FbxEffector  pEffector 
)

Set an effector node for an effector node ID.

Parameters:
pEffectorNodeIdEffector node ID.
pEffectorEffector to be associated with the effector node ID.
Returns:
true if successful, false otherwise.
bool GetEffector ( FbxEffector::ENodeId  pEffectorNodeId,
FbxEffector pEffector = NULL 
)

Get the effector associated with an effector node ID.

Parameters:
pEffectorNodeIdID of requested effector node.
pEffectorOptional pointer that returns the effector if the function succeeds.
Returns:
true if successful, false otherwise.
bool SetEffectorAux ( FbxEffector::ENodeId  pEffectorNodeId,
FbxNode pNode,
FbxEffector::ESetId  pEffectorSetId = FbxEffector::eAux1Set 
)

Set an auxiliary effector node for an effector node ID.

Parameters:
pEffectorNodeIdEffector node ID.
pNodeAuxiliary effector node to be associated with the effector node ID.
pEffectorSetIdEffector set ID. Set to FbxEffector::eAux1Set by default.
Returns:
true if successful, false otherwise.
bool GetEffectorAux ( FbxEffector::ENodeId  pEffectorNodeId,
FbxNode **  pNode = NULL,
FbxEffector::ESetId  pEffectorSetId = FbxEffector::eAux1Set 
) const

Get the auxiliary effector associated with an effector node ID.

Parameters:
pEffectorNodeIdID of requested auxiliary effector node.
pNodeOptional pointer that returns the auxiliary effector node if the function succeeds.
pEffectorSetIdEffector set ID. Set to FbxEffector::eAux1Set by default.
Returns:
true if successful, false otherwise.
static char* GetEffectorNodeName ( FbxEffector::ENodeId  pEffectorNodeId) [static]

Get the name associated with an effector node ID.

Parameters:
pEffectorNodeIdEffector node ID.
Returns:
Name associated with the effector node ID.
static FbxEffector::ENodeId GetEffectorNodeId ( char *  pEffectorNodeName) [static]

Get ID associated with an effector node name.

Parameters:
pEffectorNodeNameEffector node name.
Returns:
Effector node ID associated with the given effector node name, or -1 if no effector node with pEffectorNodeName exists.
void FromPlug ( FbxControlSetPlug pPlug)
void ToPlug ( FbxControlSetPlug pPlug)

Friends And Related Function Documentation

friend class FbxCharacter [friend]

Definition at line 330 of file fbxcontrolset.h.

friend class FbxNode [friend]

Definition at line 331 of file fbxcontrolset.h.


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

FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet
FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet FbxControlSet