FBCharacterManipulatorCtrlSet Class Reference

#include <fbcharactermanipulator.h>
FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet FBCharacterManipulatorCtrlSet
Inheritance diagram for FBCharacterManipulatorCtrlSet:
Inheritance graph
[legend]

List of all members.


Detailed Description

Constraint class.

Definition at line 316 of file fbcharactermanipulator.h.


Public Member Functions

  FBCharacterManipulatorCtrlSet (char *pName, HIObject pObject=NULL)
  Constructor.
FBCharacter GetCharacter ()
  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 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 value for a specified effector on the current manipulated character.
void  SetEffectorReachTValue (int pEffectorId, float pValue)
  Set the reach T value for a specified effector on the current manipulated character.
float  GetEffectorPullValue (int pEffectorId)
  Get the pull value for a specified effector on the current manipulated character.
void  SetEffectorPullValue (int pEffectorId, float pValue)
  Set the pull 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 ( char *  pName,
HIObject  pObject = NULL  
)

Constructor.

Parameters:
pName  Name of manipulator.
pObject  For 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:
pCharacter  Character 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 pull value bigger than 0.5 on the current manipulated character.

Parameters:
pEffectorId  Effector to verify if his child effectors are pulling.
Returns:
Returns true is one of the effector's child has a pulling value > 0.5.

int GetDescendantEffectorCount ( FBEffectorId  pEffectorId  ) 

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

Parameters:
pEffectorId  Effector 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:
pEffectorId  Effector to get the child effector of.
pIndex  Index of the child effector.
Returns:
Returns the child effector of the provided effector index.

float GetEffectorReachTValue ( int  pEffectorId  ) 

Get the reach T value for a specified effector on the current manipulated character.

Parameters:
pEffectorId  Effector to get the reach value.
Returns:
Returns the value of the translation reach.

void SetEffectorReachTValue ( int  pEffectorId,
float  pValue  
)

Set the reach T value for a specified effector on the current manipulated character.

Parameters:
pEffectorId  Effector to set the reach value.
pValue  New translation reach for the effector.

float GetEffectorPullValue ( int  pEffectorId  ) 

Get the pull value for a specified effector on the current manipulated character.

Parameters:
pEffectorId  Effector to get the pull value.
Returns:
Returns the pull value.

void SetEffectorPullValue ( int  pEffectorId,
float  pValue  
)

Set the pull value for a specified effector on the current manipulated character.

Parameters:
pEffectorId  Effector to set the pull value.
pValue  New 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:
pVector  New translation value.
pEffectorId  Effector to set the pull value.

void TranslationSetLocal ( FBTVector  pVector,
int  pEffectorId  
)

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

Parameters:
pVector  New translation value.
pEffectorId  Effector to set the pull value.

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

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

Parameters:
pEditable  Value to modify to indicate if a manipulation can be done.
pRefType  Referential 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:
pT  New value based on manipulation done by the user.
pRefType  Referential of the manipulation.
pSetType  How to apply the provided value.
pSetWhat  Which 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:
pT  FBTVector value to fill with the translation value.
pRefType  Referential of the manipulation.
pPivot  How 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:
pRefType  Referential 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:
pEditable  Value to modify to indicate if a manipulation can be done.
pRefType  Referential 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:
pRM  New value based on manipulation done by the user.
pRefType  Referential of the manipulation.
pSetType  How to apply the provided value.
pOnlyRoot  Manipulate 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:
pRM  FBMatrix value to fill with the rotation value.
pRefType  Referential 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:
pRefType  Referential 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:
pEditable  Value 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:
pS  FBSVector value to fill with the scale value.
pRefType  Referential 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:
pS  New value based on manipulation done by the user.
pRefType  Referential of the manipulation.
pSetType  How to apply the provided value.
pSetWhat  Which 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:
pRefType  Referential 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.


Please send us your comments about this page.