FBConstraint Class Reference


Detailed Description

Base class for constraints.

Inheritance diagram for FBConstraint:
Inheritance graph
[legend]

List of all members.

Public Member Functions

HFBAnimationNode  AnimationNodeOutCreate (int pUserId, FBModel pModel, str pAttribute)
  Animation Node Creations (IN/OUT).
HFBAnimationNode  AnimationNodeInCreate (int pUserId, FBModel pModel, str pAttribute)
HFBAnimationNode  AnimationNodeInCreate (int pUserId, HFBProperty pProperty)
  Animation Node Creations (IN).
bool  ReferenceAddNotify (int pGroupIndex, FBModel pModel)
  Notification callbacks for when a reference is added or removed.
bool  ReferenceRemoveNotify (int pGroupIndex, FBModel pModel)
bool  DeformerBind (FBModel pModel)
  Bind/Unbind pModel to deformation constraint.
bool  DeformerUnBind (FBModel pModel)
bool  FbxStore (HFBFbxObject pFbxObject, kFbxObjectStore pStoreWhat)
  Store/Retrieve data to/from FBX files.
bool  FbxRetrieve (HFBFbxObject pFbxObject, kFbxObjectStore pStoreWhat)
  __init__ (str pName, object pObject=None)
  Constructor.
  IObject_Declare (Implementation)
  ActiveChanged ()
  Notification for Activation Status Change.
  RemoveAllAnimationNodes ()
  Remove animation nodes.
  SetupAllAnimationNodes ()
  Setup animation nodes.
  SnapSuggested ()
  Suggest 'snap'.
  FreezeSuggested ()
  Suggest 'freeze'.
bool  Disable (FBModel pModel)
  Disable constraint on pModel.
bool  Enable (FBModel pModel)
  Enable constraint on pModel.
bool  AnimationNodeNotify (HFBAnimationNode pAnimationNode, HFBEvaluateInfo pEvaluateInfo, HFBConstraintInfo pConstraintInfo)
  Notification callback for connectors.
  SaveModelState (FBModel pModel, bool pS, bool pR, bool pT)
  Save current state of pModel.
  RestoreModelState (FBModel pModel)
  Restore the saved model state onto pModel.
  FreezeSRT (FBModel pModel, bool pS, bool pR, bool pT)
  Freeze current model state.
HFBConstraint  Clone ()
  Clone the constraint.
int  ReferenceGroupGetCount ()
  Return the number of reference groups.
int  ReferenceGroupAdd (str pGroupName, int pMaxItemCount)
  Add a group of references.
str  ReferenceGroupGetName (int pGroupIndex)
  Get the name of the reference group.
int  ReferenceGroupGetMaxCount (int pGroupIndex)
  Get the maximum number of items that can exist in the reference group in question.
FBModel  ReferenceGet (int pGroupIndex, int pItemIndex=0)
  Get a reference.
int  ReferenceGetCount (int pGroupIndex)
  Get number of references in a specified group.
bool  ReferenceAdd (int pGroupIndex, FBModel pModel)
  Add a reference to a specified group.
bool  ReferenceRemove (int pGroupIndex, FBModel pModel)
  Remove a reference to pModel from the group at pGroupIndex.
  ReferenceRemoveAll ()
  Remove All References.
bool  DeformerPreNotify (FBModel pModel, HFBEvaluateInfo pEvaluateInfo, FBVector4 pBBoxMin, FBVector4 pBBoxMax)
  Deformation pre-notification function This function pass the evaluation information for deformation (if timing is required).
bool  DeformerNotify (FBModel pModel, FBVector4 pSrcVertex, FBVector4 pSrcNormal, int pCount, FBVector4 pDstVertex, FBVector4 pDstNormal)
  Deformation notification function.

Public Attributes

FBPropertyBase  Deformer
  Read Write Property: Is a deformer constraint?.
FBPropertyBase  HasLayout
  Read Write Property: Does the constraint have a layout?.
FBPropertyString  Description
  Read Write Property: Long description of constraint.
FBPropertyBase  Active
  Read Write Property: Active state.
FBPropertyBase  Lock
  Read Write Property: Lock state.
FBPropertyAction  Snap
  Function Property: Snap constraint.
FBPropertyBaseAnimatable  Weight
  Read Write Property: Weight of constraint.

Member Function Documentation

HFBAnimationNode AnimationNodeOutCreate ( int  pUserId,
FBModel  pModel,
str  pAttribute 
)

Animation Node Creations (IN/OUT).

Used to create the connectors (in or out) on an animation node. This function will return a newly created animation node, connected to the model specified by pModel.

Parameters:
pUserId User specified reference number.
pModel Model to associate with animation node.
pAttribute Attribute of model to animate (i.e. Translation, Lcl Translation, etc.)
Returns:
Newly created IN/OUT animation node.
HFBAnimationNode AnimationNodeInCreate ( int  pUserId,
FBModel  pModel,
str  pAttribute 
)
HFBAnimationNode AnimationNodeInCreate ( int  pUserId,
HFBProperty  pProperty 
)

Animation Node Creations (IN).

Used to create the In connectors on an animation node. This function will return a newly created animation node, connected to the model specified by pProperty.

Parameters:
pUserId User specified reference number.
pProperty Property of model to animate (must be animatable)
Returns:
Newly created IN animation node.
bool ReferenceAddNotify ( int  pGroupIndex,
FBModel  pModel 
)

Notification callbacks for when a reference is added or removed.

Parameters:
pGroupIndex Index of group where reference was affected.
pModel Model to which reference was associated.
Returns:
true if successful.
bool ReferenceRemoveNotify ( int  pGroupIndex,
FBModel  pModel 
)
bool DeformerBind ( FBModel  pModel )

Bind/Unbind pModel to deformation constraint.

These functions are used for adding/removing a deformation binding to/from pModel if the constraint is a deformation constraint.

Parameters:
pModel Model to bind/unbind.
Returns:
true if successful.
bool DeformerUnBind ( FBModel  pModel )
bool FbxStore ( HFBFbxObject  pFbxObject,
kFbxObjectStore  pStoreWhat 
)

Store/Retrieve data to/from FBX files.

Parameters:
pFbxObject Interface to FBX format.
pStoreWhat Attributes to store in FBX file.
Returns:
true if successful.

Reimplemented from FBBox.

bool FbxRetrieve ( HFBFbxObject  pFbxObject,
kFbxObjectStore  pStoreWhat 
)

Reimplemented from FBBox.

__init__ ( str  pName,
object  pObject = None 
)

Constructor.

Parameters:
pName Name of constraint.
pObject For internal use only (default is NULL).

Reimplemented from FBBox.

Reimplemented in FBActor, FBCharacter, FBCharacterFace, and FBConstraintSolver.

IObject_Declare ( Implementation  )

Reimplemented from FBBox.

Reimplemented in FBCharacter, and FBCharacterFace.

ActiveChanged ( )

Notification for Activation Status Change.

RemoveAllAnimationNodes ( )

Remove animation nodes.

SetupAllAnimationNodes ( )

Setup animation nodes.

SnapSuggested ( )

Suggest 'snap'.

FreezeSuggested ( )

Suggest 'freeze'.

bool Disable ( FBModel  pModel )

Disable constraint on pModel.

Parameters:
pModel Model on which constraint should be disabled.
Returns:
true if successful.
bool Enable ( FBModel  pModel )

Enable constraint on pModel.

Parameters:
pModel Model on which constraint should be enable.
Returns:
true if successful.
bool AnimationNodeNotify ( HFBAnimationNode  pAnimationNode,
HFBEvaluateInfo  pEvaluateInfo,
HFBConstraintInfo  pConstraintInfo 
)

Notification callback for connectors.

Parameters:
pAnimationNode Animation node being notified.
pEvaluateInfo Information for evaluation.
pConstraintInfo Information for constraint.
Returns:
true if successful.
SaveModelState ( FBModel  pModel,
bool  pS,
bool  pR,
bool  pT 
)

Save current state of pModel.

Parameters:
pModel Model to save.
pS Scaling information?
pR Rotation information?
pT Translation information?
RestoreModelState ( FBModel  pModel )

Restore the saved model state onto pModel.

Parameters:
pModel Model to affect with previous state.
FreezeSRT ( FBModel  pModel,
bool  pS,
bool  pR,
bool  pT 
)

Freeze current model state.

Parameters:
pModel Model to freeze constraint on.
pS Scaling freeze?
pR Rotation freeze?
pT Translation freeze?
HFBConstraint Clone ( )

Clone the constraint.

Returns:
Newly created (and copied) constraint.

Reimplemented in FBCharacter.

int ReferenceGroupGetCount ( )

Return the number of reference groups.

Returns:
Number of reference groups.
int ReferenceGroupAdd ( str  pGroupName,
int  pMaxItemCount 
)

Add a group of references.

Parameters:
pGroupName Name of reference group to add.
pMaxItemCount Maximum number of items in pGroupName.
Returns:
Index of new reference group.
str ReferenceGroupGetName ( int  pGroupIndex )

Get the name of the reference group.

Parameters:
pGroupIndex Index of the reference group to get the name for.
Returns:
The name of the reference group pGroupIndex.
int ReferenceGroupGetMaxCount ( int  pGroupIndex )

Get the maximum number of items that can exist in the reference group in question.

Parameters:
pGroupIndex Index of reference group.
Returns:
Maximum number of items that can be added to the reference group.
FBModel ReferenceGet ( int  pGroupIndex,
int  pItemIndex = 0 
)

Get a reference.

Parameters:
pGroupIndex Index of reference group containing desired reference.
pItemIndex Index of reference in group to get (default is 0).
Returns:
Model at specified reference.
int ReferenceGetCount ( int  pGroupIndex )

Get number of references in a specified group.

Parameters:
pGroupIndex Index of group to query the number of references.
Returns:
Number of references in specified group.
bool ReferenceAdd ( int  pGroupIndex,
FBModel  pModel 
)

Add a reference to a specified group.

Parameters:
pGroupIndex Group to add reference to.
pModel Model to place at new reference.
Returns:
true if successful.
Warning:
If you try to add a model to a group that is already full, the success of the operation will be false and the reference will not be added.
bool ReferenceRemove ( int  pGroupIndex,
FBModel  pModel 
)

Remove a reference to pModel from the group at pGroupIndex.

Parameters:
pGroupIndex Index to remove reference from.
pModel Model to remove reference from.
Returns:
true if successful.
ReferenceRemoveAll ( )

Remove All References.

bool DeformerPreNotify ( FBModel  pModel,
HFBEvaluateInfo  pEvaluateInfo,
FBVector4  pBBoxMin,
FBVector4  pBBoxMax 
)

Deformation pre-notification function This function pass the evaluation information for deformation (if timing is required).

And user should provide the estimation of the bounding volume of the model after deformation. This estimation will be used to determine the model's visibility in the camera's frustum. Only those potential visible models will receive the following DeformerNotify() callback.

Parameters:
pModel Model to deform.
pEvaluateInfo Information for evaluation.
pBBoxMin (In/Out) The estimation of min vertex of the bounding box before & after deformation
pBBoxMax (In/Out) The estimation of max vertex of the bounding box before & after deformation
Returns:
true if the deformer provide valid bbox estimation and wish reduce the following deformation if possible, false if deformer wish to continue deformation without considering frustum visibility.
bool DeformerNotify ( FBModel  pModel,
FBVector4  pSrcVertex,
FBVector4  pSrcNormal,
int  pCount,
FBVector4  pDstVertex,
FBVector4  pDstNormal 
)

Deformation notification function.

Parameters:
pModel Model to deform.
pSrcVertex Source vertex array (i.e. vertex to deform).
pSrcNormal Normals at source vertex array.
pCount Number of vertices in source/destination arrays
pDstVertex Destination vertex array (i.e. where source vertex gets deformed to)
pDstNormal Normals at destination vertex array.
Returns:
true if successful.

Member Data Documentation

FBPropertyBase Deformer

Read Write Property: Is a deformer constraint?.

FBPropertyBase HasLayout

Read Write Property: Does the constraint have a layout?.

Read Write Property: Long description of constraint.

FBPropertyBase Active

Read Write Property: Active state.

FBPropertyBase Lock

Read Write Property: Lock state.

Function Property: Snap constraint.

FBPropertyBaseAnimatable Weight

Read Write Property: Weight of constraint.

Reimplemented in FBStoryTrack.


FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint
FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint FBConstraint