Public Member Functions

FBCharacterManipulatorCtrlSet Class Reference

Search for all occurrences

Detailed Description

Constraint class.

Definition at line 316 of file fbcharactermanipulator.h.

#include <fbcharactermanipulator.h>

Inheritance diagram for FBCharacterManipulatorCtrlSet:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 FBCharacterManipulatorCtrlSet (const char *pName, HIObject pObject=NULL)
 Constructor.
FBCharacterGetCharacter ()
 Returns the character being manipulated.
virtual void AllocateState (FBCharacter *pCharacter)
 Override this method to allocate the necessary state requires when manipulating a character.
virtual void DeallocateState ()
 Override this method to deallocate the state allocate in the AllocateState() function.
bool IsFullBody ()
 Determine if the character is in Full Body keying mode.
bool IsBodyPart ()
 Determine if the character is in Body Part keying mode.
bool IsReachOverride ()
 Determine if the reach override option is enable for the manipulated character.
bool IsStiffnessOverride ()
 Determine if the stiffness override option is enable for the manipulated character.
bool IsIKPivotUse ()
 Determine if IK pivot are used when manipualting a character.
virtual void SyncCharacter (FBEvaluateInfo *pEvalInfo)
 Synchronize the character after doing a manipulation using this function.
FBEffectorId GetManipulatedEffectorId ()
 Find the index of the currently manipulated effector for Translation or Rotation depending of Mode.
FBEffectorId GetManipulatedEffectorIdForRotation ()
 Find the index of the currently manipulated effector for Rotation Only.
FBEffectorId GetManipulatedEffectorIdForTranslation ()
 Find the index of the currently manipulated effector For Translation.
FBEffectorSetID GetEffectorSet ()
 Find the index of the currently manipulated effector set.
FBBodyNodeId GetManipulatedBodyNode ()
 Find the index of the currently manipulated effector set.
bool IsDescendantPulling (FBEffectorId pEffectorId)
 Determine if one of the effector's child has a IK Pull value bigger than 0.5 on the current manipulated character.
int GetDescendantEffectorCount (FBEffectorId pEffectorId)
 Return the child effector count of the provided effector based on the skeleton hierarchy.
FBEffectorId GetDescendantEffector (FBEffectorId pEffectorId, int pIndex)
 Return the child effector for the provided effector.
float GetEffectorReachTValue (int pEffectorId)
 Get the reach T (IK Blend T since MotionBuilder 2013) value for a specified effector on the current manipulated character.
void SetEffectorReachTValue (int pEffectorId, float pValue)
 Set the reach T (IK Blend T since MotionBuilder 2013) value for a specified effector on the current manipulated character.
float GetEffectorPullValue (int pEffectorId)
 Get the pull (IK Pull since MotionBuilder 2013) value for a specified effector on the current manipulated character.
void SetEffectorPullValue (int pEffectorId, float pValue)
 Set the pull (IK Pull since MotionBuilder 2013) value for a specified effector on the current manipulated character.
void TranslationSetGlobal (FBTVector pVector, int pEffectorId)
 Set the translation for the specified effector on the current manipulated character in global coordinate.
void TranslationSetLocal (FBTVector pVector, int pEffectorId)
 Set the translation for the specified effector on the current manipulated character in local coordinate.
virtual FBManipulationGetResult TranslationIsEditable (bool &pEditable, FBReferencialType pRefType)
 Returned value will indicate if a translation manipulation can be done.
virtual FBManipulationSetResult TranslationSet (FBTVector &pT, FBReferencialType pRefType, FBSetType pSetType, FBSetWhat pSetWhat)
 Set the value of the translation to the manipulated model.
virtual FBManipulationGetResult TranslationGet (FBTVector &pT, FBReferencialType pRefType, FBManipPivot pPivot=FBManipPivotObjectTranslation)
 Get the translation manipulator position.
virtual FBManipulationStartResult TranslationStartManipulation (FBReferencialType pRefType)
 Called to determine if the manipulation can be done.
void TranslationStopManipulation ()
 Called when the manipulation is finished.
virtual FBManipulationGetResult RotationIsEditable (bool &pEditable, FBReferencialType pRefType)
 Returned value will indicate if a rotation manipulation can be done.
virtual FBManipulationSetResult RotationSet (FBMatrix &pRM, FBReferencialType pRefType, FBSetType pSetType, bool pOnlyRoot=false)
 Set the value of the translation to the manipulated model.
virtual FBManipulationGetResult RotationGet (FBMatrix &pRM, FBReferencialType pRefType)
 Get the rotation manipulator position.
virtual FBManipulationStartResult RotationStartManipulation (FBReferencialType pRefType)
 Called to determine if the manipulation can be done.
virtual void RotationStopManipulation ()
 Called when the manipulation is finished.
virtual FBManipulationGetResult ScalingIsEditable (bool &pEditable)
 Returned value will indicate if a scaling manipulation can be done.
virtual FBManipulationGetResult ScalingGet (FBSVector &pS, FBReferencialType pRefType)
 Get the scale manipulator position.
virtual FBManipulationSetResult ScalingSet (FBSVector &pS, FBReferencialType pRefType, FBSetType pSetType, FBSetWhat pSetWhat)
 Set the value of the scale to the manipulated model.
virtual FBManipulationStartResult ScalingStartManipulation (FBReferencialType pRefType)
 Called to determine if the manipulation can be done.
virtual void ScalingStopManipulation ()
 Called when the manipulation is finished.

Constructor & Destructor Documentation

FBCharacterManipulatorCtrlSet ( const char *  pName,
HIObject  pObject = NULL 
)

Constructor.

Parameters:
pNameName of manipulator.
pObjectFor internal use only (default is NULL).

Member Function Documentation

FBCharacter* GetCharacter ( )

Returns the character being manipulated.

Returns:
The character being manipulated.
virtual void AllocateState ( FBCharacter pCharacter) [virtual]

Override this method to allocate the necessary state requires when manipulating a character.

This method is called once when the character is connected to the solver

Parameters:
pCharacterCharacter that will be manipulated by the manipulator.
virtual void DeallocateState ( ) [virtual]

Override this method to deallocate the state allocate in the AllocateState() function.

This method is called once when the character is disconnected from the solver

bool IsFullBody ( )

Determine if the character is in Full Body keying mode.

Returns:
Returns true if the character is in Full Body keying mode.
bool IsBodyPart ( )

Determine if the character is in Body Part keying mode.

Returns:
Returns true if the character is in Body Part keying mode.
bool IsReachOverride ( )

Determine if the reach override option is enable for the manipulated character.

Returns:
Returns true if the reach override option is enable.
bool IsStiffnessOverride ( )

Determine if the stiffness override option is enable for the manipulated character.

Returns:
Returns true if the stiffness override option is enable.
bool IsIKPivotUse ( )

Determine if IK pivot are used when manipualting a character.

Returns:
Returns true if the IK pivot are used.
virtual void SyncCharacter ( FBEvaluateInfo pEvalInfo) [virtual]

Synchronize the character after doing a manipulation using this function.

FBEffectorId GetManipulatedEffectorId ( )

Find the index of the currently manipulated effector for Translation or Rotation depending of Mode.

Returns:
Returns the index of the effector or kFBInvalidEffectorId if no effector is manipulated or if the reference is manipulated.
FBEffectorId GetManipulatedEffectorIdForRotation ( )

Find the index of the currently manipulated effector for Rotation Only.

Returns:
Returns the index of the effector or kFBInvalidEffectorId if no effector is manipulated or if the reference is manipulated.
FBEffectorId GetManipulatedEffectorIdForTranslation ( )

Find the index of the currently manipulated effector For Translation.

Returns:
Returns the index of the effector or kFBInvalidEffectorId if no effector is manipulated or if the reference is manipulated.
FBEffectorSetID GetEffectorSet ( )

Find the index of the currently manipulated effector set.

Returns:
Returns the index of the manipulated effector set.
FBBodyNodeId GetManipulatedBodyNode ( )

Find the index of the currently manipulated effector set.

Returns:
Returns the index of the manipulated effector set.
bool IsDescendantPulling ( FBEffectorId  pEffectorId)

Determine if one of the effector's child has a IK Pull value bigger than 0.5 on the current manipulated character.

Parameters:
pEffectorIdEffector to verify if his child effectors are pulling.
Returns:
Returns true is one of the effector's child has an IK Pull value > 0.5.
int GetDescendantEffectorCount ( FBEffectorId  pEffectorId)

Return the child effector count of the provided effector based on the skeleton hierarchy.

Parameters:
pEffectorIdEffector to get to number of child effector of.
Returns:
Returns the number of child for the effector index provided.
FBEffectorId GetDescendantEffector ( FBEffectorId  pEffectorId,
int  pIndex 
)

Return the child effector for the provided effector.

Parameters:
pEffectorIdEffector to get the child effector of.
pIndexIndex of the child effector.
Returns:
Returns the child effector of the provided effector index.
float GetEffectorReachTValue ( int  pEffectorId)

Get the reach T (IK Blend T since MotionBuilder 2013) value for a specified effector on the current manipulated character.

Parameters:
pEffectorIdEffector to get the reach value.
Returns:
Returns the value of the translation reach.
void SetEffectorReachTValue ( int  pEffectorId,
float  pValue 
)

Set the reach T (IK Blend T since MotionBuilder 2013) value for a specified effector on the current manipulated character.

Parameters:
pEffectorIdEffector to set the reach value.
pValueNew translation reach for the effector.
float GetEffectorPullValue ( int  pEffectorId)

Get the pull (IK Pull since MotionBuilder 2013) value for a specified effector on the current manipulated character.

Parameters:
pEffectorIdEffector to get the IK Pull value.
Returns:
Returns the pull value.
void SetEffectorPullValue ( int  pEffectorId,
float  pValue 
)

Set the pull (IK Pull since MotionBuilder 2013) value for a specified effector on the current manipulated character.

Parameters:
pEffectorIdEffector to set the IK Pull value.
pValueNew IK Pull value for the effector.
void TranslationSetGlobal ( FBTVector  pVector,
int  pEffectorId 
)

Set the translation for the specified effector on the current manipulated character in global coordinate.

Parameters:
pVectorNew translation value.
pEffectorIdEffector to set the IK Pull value.
void TranslationSetLocal ( FBTVector  pVector,
int  pEffectorId 
)

Set the translation for the specified effector on the current manipulated character in local coordinate.

Parameters:
pVectorNew translation value.
pEffectorIdEffector to set the IK Pull value.
virtual FBManipulationGetResult TranslationIsEditable ( bool &  pEditable,
FBReferencialType  pRefType 
) [virtual]

Returned value will indicate if a translation manipulation can be done.

Parameters:
pEditableValue to modify to indicate if a manipulation can be done.
pRefTypeReferential of the manipulation.
Returns:
Manipulation can be done

Implements FBCharacterManipulator.

virtual FBManipulationSetResult TranslationSet ( FBTVector pT,
FBReferencialType  pRefType,
FBSetType  pSetType,
FBSetWhat  pSetWhat 
) [virtual]

Set the value of the translation to the manipulated model.

Parameters:
pTNew value based on manipulation done by the user.
pRefTypeReferential of the manipulation.
pSetTypeHow to apply the provided value.
pSetWhatWhich component of the provided value to use.
Returns:
Indicate if we have handle the call or if we want other manipulators to handle it.

Implements FBCharacterManipulator.

virtual FBManipulationGetResult TranslationGet ( FBTVector pT,
FBReferencialType  pRefType,
FBManipPivot  pPivot = FBManipPivotObjectTranslation 
) [virtual]

Get the translation manipulator position.

Parameters:
pTFBTVector value to fill with the translation value.
pRefTypeReferential of the manipulation.
pPivotHow to consider the pivot if there is one.
Returns:
Indicate if we have handle the call or if we want other manipulators to handle it.

Implements FBCharacterManipulator.

virtual FBManipulationStartResult TranslationStartManipulation ( FBReferencialType  pRefType) [virtual]

Called to determine if the manipulation can be done.

Parameters:
pRefTypeReferential of the manipulation.
Returns:
Indicate if we can handle the manipualtion.

Implements FBCharacterManipulator.

void TranslationStopManipulation ( ) [virtual]

Called when the manipulation is finished.

Implements FBCharacterManipulator.

virtual FBManipulationGetResult RotationIsEditable ( bool &  pEditable,
FBReferencialType  pRefType 
) [virtual]

Returned value will indicate if a rotation manipulation can be done.

Parameters:
pEditableValue to modify to indicate if a manipulation can be done.
pRefTypeReferential of the manipulation.
Returns:
Manipulation can be done

Implements FBCharacterManipulator.

virtual FBManipulationSetResult RotationSet ( FBMatrix pRM,
FBReferencialType  pRefType,
FBSetType  pSetType,
bool  pOnlyRoot = false 
) [virtual]

Set the value of the translation to the manipulated model.

Parameters:
pRMNew value based on manipulation done by the user.
pRefTypeReferential of the manipulation.
pSetTypeHow to apply the provided value.
pOnlyRootManipulate only root node.
Returns:
Indicate if we have handle the call or if we want other manipulators to handle it.

Implements FBCharacterManipulator.

virtual FBManipulationGetResult RotationGet ( FBMatrix pRM,
FBReferencialType  pRefType 
) [virtual]

Get the rotation manipulator position.

Parameters:
pRMFBMatrix value to fill with the rotation value.
pRefTypeReferential of the manipulation.
Returns:
Indicate if we have handle the call or if we want other manipulators to handle it.

Implements FBCharacterManipulator.

virtual FBManipulationStartResult RotationStartManipulation ( FBReferencialType  pRefType) [virtual]

Called to determine if the manipulation can be done.

Parameters:
pRefTypeReferential of the manipulation.
Returns:
Indicate if we can handle the manipualtion.

Implements FBCharacterManipulator.

virtual void RotationStopManipulation ( ) [virtual]

Called when the manipulation is finished.

Implements FBCharacterManipulator.

virtual FBManipulationGetResult ScalingIsEditable ( bool &  pEditable) [virtual]

Returned value will indicate if a scaling manipulation can be done.

Return values:
pEditableValue to modify to indicate if a manipulation can be done.
Returns:
Manipulation can be done

Implements FBCharacterManipulator.

virtual FBManipulationGetResult ScalingGet ( FBSVector pS,
FBReferencialType  pRefType 
) [virtual]

Get the scale manipulator position.

Parameters:
pSFBSVector value to fill with the scale value.
pRefTypeReferential of the manipulation.
Returns:
Indicate if we have handle the call or if we want other manipulators to handle it.

Implements FBCharacterManipulator.

virtual FBManipulationSetResult ScalingSet ( FBSVector pS,
FBReferencialType  pRefType,
FBSetType  pSetType,
FBSetWhat  pSetWhat 
) [virtual]

Set the value of the scale to the manipulated model.

Parameters:
pSNew value based on manipulation done by the user.
pRefTypeReferential of the manipulation.
pSetTypeHow to apply the provided value.
pSetWhatWhich component of the provided value to use.
Returns:
Indicate if we have handle the call or if we want other manipulators to handle it.

Implements FBCharacterManipulator.

virtual FBManipulationStartResult ScalingStartManipulation ( FBReferencialType  pRefType) [virtual]

Called to determine if the manipulation can be done.

Parameters:
pRefTypeReferential of the manipulation.
Returns:
Indicate if we can handle the manipualtion.

Implements FBCharacterManipulator.

virtual void ScalingStopManipulation ( ) [virtual]

Called when the manipulation is finished.

Implements FBCharacterManipulator.


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

FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet
FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet