FBConstraint Class Reference


Detailed Description

Base class for constraints.

Inheritance diagram for FBConstraint:

List of all members.

Public Member Functions

FBAnimationNode AnimationNodeOutCreate (uintptr_t pUserId, FBModel pModel, str pAttribute)
 Animation Node Creations (IN/OUT).
FBAnimationNode AnimationNodeInCreate (uintptr_t pUserId, FBModel pModel, str pAttribute)
FBAnimationNode AnimationNodeInCreate (uintptr_t pUserId, FBProperty 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 (FBFbxObject pFbxObject, kFbxObjectStore pStoreWhat)
 Store/Retrieve data to/from FBX files.
bool FbxRetrieve (FBFbxObject pFbxObject, kFbxObjectStore pStoreWhat)
 __init__ (str pName, object pObject=None)
 Constructor.
 IObject_Declare (K_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 (FBAnimationNode pAnimationNode, FBEvaluateInfo pEvaluateInfo, FBConstraintInfo 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.
FBConstraint 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, FBEvaluateInfo 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

FBAnimationNode AnimationNodeOutCreate ( uintptr_t  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:
pUserIdUser specified reference number.
pModelModel to associate with animation node.
pAttributeAttribute of model to animate (i.e. Translation, Lcl Translation, etc.)
Returns:
Newly created IN/OUT animation node.
FBAnimationNode AnimationNodeInCreate ( uintptr_t  pUserId,
FBModel  pModel,
str  pAttribute 
)
FBAnimationNode AnimationNodeInCreate ( uintptr_t  pUserId,
FBProperty  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:
pUserIdUser specified reference number.
pPropertyProperty 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:
pGroupIndexIndex of group where reference was affected.
pModelModel 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:
pModelModel to bind/unbind.
Returns:
true if successful.
bool DeformerUnBind ( FBModel  pModel)
bool FbxStore ( FBFbxObject  pFbxObject,
kFbxObjectStore  pStoreWhat 
)

Store/Retrieve data to/from FBX files.

Parameters:
pFbxObjectInterface to FBX format.
pStoreWhatAttributes to store in FBX file.
Returns:
true if successful.

Reimplemented from FBBox.

bool FbxRetrieve ( FBFbxObject  pFbxObject,
kFbxObjectStore  pStoreWhat 
)

Reimplemented from FBBox.

__init__ ( str  pName,
object  pObject = None 
)

Constructor.

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

Reimplemented from FBBox.

Reimplemented in FBActor, FBCharacter, FBCharacterFace, and FBConstraintSolver.

IObject_Declare ( K_IMPLEMENTATION  )

Reimplemented from FBBox.

Reimplemented in FBCharacter, and FBCharacterFace.

ActiveChanged ( )

Notification for Activation Status Change.

RemoveAllAnimationNodes ( )

Remove animation nodes.

SetupAllAnimationNodes ( )

Setup animation nodes.

SnapSuggested ( )
FreezeSuggested ( )

Suggest 'freeze'.

bool Disable ( FBModel  pModel)

Disable constraint on pModel.

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

Enable constraint on pModel.

Parameters:
pModelModel on which constraint should be enable.
Returns:
true if successful.
bool AnimationNodeNotify ( FBAnimationNode  pAnimationNode,
FBEvaluateInfo  pEvaluateInfo,
FBConstraintInfo  pConstraintInfo 
)

Notification callback for connectors.

Parameters:
pAnimationNodeAnimation node being notified.
pEvaluateInfoInformation for evaluation.
pConstraintInfoInformation for constraint.
Returns:
true if successful.
SaveModelState ( FBModel  pModel,
bool  pS,
bool  pR,
bool  pT 
)

Save current state of pModel.

Parameters:
pModelModel to save.
pSScaling information?
pRRotation information?
pTTranslation information?
RestoreModelState ( FBModel  pModel)

Restore the saved model state onto pModel.

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

Freeze current model state.

Parameters:
pModelModel to freeze constraint on.
pSScaling freeze?
pRRotation freeze?
pTTranslation freeze?
FBConstraint 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:
pGroupNameName of reference group to add.
pMaxItemCountMaximum number of items in pGroupName.
Returns:
Index of new reference group.
str ReferenceGroupGetName ( int  pGroupIndex)

Get the name of the reference group.

Parameters:
pGroupIndexIndex 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:
pGroupIndexIndex 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:
pGroupIndexIndex of reference group containing desired reference.
pItemIndexIndex 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:
pGroupIndexIndex 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:
pGroupIndexGroup to add reference to.
pModelModel 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:
pGroupIndexIndex to remove reference from.
pModelModel to remove reference from.
Returns:
true if successful.
ReferenceRemoveAll ( )

Remove All References.

bool DeformerPreNotify ( FBModel  pModel,
FBEvaluateInfo  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:
pModelModel to deform.
pEvaluateInfoInformation 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:
pModelModel to deform.
pSrcVertexSource vertex array (i.e. vertex to deform).
pSrcNormalNormals at source vertex array.
pCountNumber of vertices in source/destination arrays
pDstVertexDestination vertex array (i.e. where source vertex gets deformed to)
pDstNormalNormals 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