FBX C++ API Reference
|
#include <fbxpose.h>
This class contains the description of a Pose and provide some methods to access Pose info in one FBX scene.
The FbxPose object can be setup to hold "Bind Pose" data or "Rest Pose" data.
The Bind Pose holds the transformation (translation, rotation and scaling) matrix of all the nodes implied in a link deformation. This includes the geometry being deformed, the links deforming the geometry, and recursively all the ancestors nodes of the link. The Bind Pose gives you the transformation of the nodes at the moment of the binding operation when no deformation occurs.
The Rest Pose is a snapshot of a node transformation. A Rest Pose can be used to store the position of every node of a character at a certain point in time. This pose can then be used as a reference position for animation tasks, like editing walk cycles.
One difference between the two modes is in the validation performed before adding an item and the kind of matrix stored.
In "Bind Pose" mode, the matrix is assumed to be defined in the global space, while in "Rest Pose" the type of the matrix may be specified by the caller. So local system matrices can be used. Actually, because there is one such flag for each entry (FbxPoseInfo), it is possible to have mixed types in a FbxPose elements. It is therefore the responsibility of the caller to check for the type of the retrieved matrix and to do the appropriate conversions if required.
The validation of the data to be added consists of the following steps:
\li If this FbxPose object stores "Bind Poses", then add a FbxPoseInfo only if the node is not already associated to another "Bind Pose". This check is done by visiting ALL the FbxPose objects in the system. The above test is only performed for the "Bind Pose" type. While the next one is always performed, no matter what kind of poses this FbxPose object is setup to hold. \li If a node is already inserted in the FbxPose internal list, then the passed matrix MUST be equal to the one already stored. If this is not the case, the Add method will return -1, indicating that no new FbxPoseInfo has been created.
If the Add method succeeds, it will return the index of the FbxPoseInfo structure that as been created and held by the FbxPose object.
To ensure data integrity, the stored information can only be accessed using the provided methods (read-only). If an entry needs to be modified, the caller has to remove the FbxPoseInfo item by calling Remove(i) and then Add a new one.
The internal list is not ordered and the search inside this list is linear (from the first element to ... the first match or the end of the list).
Public Types | |
typedef FbxObject | ParentClass |
![]() | |
typedef FbxEmitter | ParentClass |
enum | EObjectFlag { eNone = 0, eInitialized = 1 << 0, eSystem = 1 << 1, eSavable = 1 << 2, eSelected = 1 << 3, eHidden = 1 << 4, eContentLoaded = 1 << 5, eDontLocalize = 1 << 6, eCopyCalledByClone = 1 << 16 } |
Flags available to control objects. More... | |
enum | ECloneType { eDeepClone, eReferenceClone } |
Types of clones that can be created for FbxObject. More... | |
Public Member Functions | |
virtual FbxClassId | GetClassId () const |
void | SetIsBindPose (bool pIsBindPose) |
Set the type of pose. More... | |
bool | IsBindPose () const |
Pose identifier flag. More... | |
bool | IsRestPose () const |
Pose identifier flag. More... | |
int | GetCount () const |
Get number of stored items. More... | |
int | Add (FbxNode *pNode, const FbxMatrix &pMatrix, bool pLocalMatrix=false, bool pMultipleBindPose=true) |
Stores the pose transformation for the given node. More... | |
void | Remove (int pIndex) |
Remove the pIndexth item from the Pose object. More... | |
FbxNameHandler | GetNodeName (int pIndex) const |
Get the node name. More... | |
FbxNode * | GetNode (int pIndex) const |
Get the node. More... | |
const FbxMatrix & | GetMatrix (int pIndex) const |
Get the transform matrix. More... | |
bool | IsLocalMatrix (int pIndex) const |
Get the type of the matrix. More... | |
![]() | |
virtual void | Compact () |
Compact the memory used by this object. More... | |
template<class T > | |
bool | Is () const |
Templated test if this class is a hierarchical children of the specified class type. More... | |
FbxManager * | GetFbxManager () const |
Retrieve the FbxManager this object belongs to. More... | |
FbxDocument * | GetDocument () const |
Returns a const pointer to the document that contains this object. More... | |
FbxDocument * | GetRootDocument () const |
Returns a const pointer to the root document that contains this object. More... | |
FbxScene * | GetScene () const |
Returns a const pointer to the scene that contains this object. More... | |
void | Destroy (bool pRecursive=false) |
Unregister and delete this object from memory. More... | |
void | ResetProperties () |
Reset all the properties of this object to their default values. More... | |
virtual bool | GetSelected () |
Returns if this object is currently in a selected state. More... | |
virtual void | SetSelected (bool pSelected) |
Sets whether this object is currently selected. More... | |
void | SetUserDataPtr (const FbxUInt64 &pUserID, void *pUserData) |
Sets the data pointer for an user data record whose ID is pUserID. More... | |
void * | GetUserDataPtr (const FbxUInt64 &pUserID) const |
Returns the data pointer of an user data record whose ID is pUserID. More... | |
void | SetUserDataPtr (void *pUserData) |
Sets the data pointer for the user data record whose ID is the object ID. More... | |
void * | GetUserDataPtr () const |
Returns the data pointer of the user data record whose ID is the object ID. More... | |
bool | ConnectSrcObject (FbxObject *pObject, FbxConnection::EType pType=FbxConnection::eNone) |
Connects this object to a source object. More... | |
bool | IsConnectedSrcObject (const FbxObject *pObject) const |
Judges whether this object connects with the source object. More... | |
bool | DisconnectSrcObject (FbxObject *pObject) |
Disconnects this object from a source object. More... | |
bool | DisconnectAllSrcObject () |
Disconnects this object from all source objects. More... | |
bool | DisconnectAllSrcObject (const FbxCriteria &pCriteria) |
Disconnects this object from all source objects that satisfy a given criteria. More... | |
int | GetSrcObjectCount () const |
Returns the number of source objects with which this object connects. More... | |
int | GetSrcObjectCount (const FbxCriteria &pCriteria) const |
Returns the number of source objects that satisfy the given criteria with which this object connects. More... | |
FbxObject * | GetSrcObject (int pIndex=0) const |
Returns the source object with which this object connects at the specified index. More... | |
FbxObject * | GetSrcObject (const FbxCriteria &pCriteria, int pIndex=0) const |
Returns the source object that satisfies the criteria at the specified index with which this object connects. More... | |
FbxObject * | FindSrcObject (const char *pName, int pStartIndex=0) const |
Searches the source object with the specified name, starting at the specified index. More... | |
FbxObject * | FindSrcObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const |
Searches the source object with the specified name which satisfies the given criteria, starting at the specified index. More... | |
template<class T > | |
bool | DisconnectAllSrcObject () |
Disconnects this object from all source objects of the specified class type. More... | |
template<class T > | |
bool | DisconnectAllSrcObject (const FbxCriteria &pCriteria) |
Disconnects this object from all source objects that are of the specified class type and that satisfy the given criteria. More... | |
template<class T > | |
int | GetSrcObjectCount () const |
Returns the number of source objects of a specific class type with which this object connects. More... | |
template<class T > | |
int | GetSrcObjectCount (const FbxCriteria &pCriteria) const |
Returns the number of source objects with which this object connects that are the specified class type and that satisfy the given criteria. More... | |
template<class T > | |
T * | GetSrcObject (int pIndex=0) const |
Returns the source object of the specified class type at the specified index. More... | |
template<class T > | |
T * | GetSrcObject (const FbxCriteria &pCriteria, int pIndex=0) const |
Returns the source object that is the specified class type and that satisfies the given criteria at the specified index. More... | |
template<class T > | |
T * | FindSrcObject (const char *pName, int pStartIndex=0) const |
Searches the source object with the specified name that is the specified class type, starting at the specified index. More... | |
template<class T > | |
T * | FindSrcObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const |
Searches the source object with the specified name that is the specified class type and that satisfies the given criteria, starting at the specified index. More... | |
bool | ConnectDstObject (FbxObject *pObject, FbxConnection::EType pType=FbxConnection::eNone) |
Connects this object to one destination object. More... | |
bool | IsConnectedDstObject (const FbxObject *pObject) const |
Judges whether this object connects with the destination object. More... | |
bool | DisconnectDstObject (FbxObject *pObject) |
Disconnects this object from the destination object. More... | |
bool | DisconnectAllDstObject () |
Disconnects this object from all destination objects. More... | |
bool | DisconnectAllDstObject (const FbxCriteria &pCriteria) |
Disconnects this object from all destination objects that satisfy given criteria. More... | |
int | GetDstObjectCount () const |
Returns the number of destination objects with which this object connects. More... | |
int | GetDstObjectCount (const FbxCriteria &pCriteria) const |
Returns the number of destination objects with which this object connects that satisfy the given criteria. More... | |
FbxObject * | GetDstObject (int pIndex=0) const |
Returns the destination object at the specified index with which this object connects. More... | |
FbxObject * | GetDstObject (const FbxCriteria &pCriteria, int pIndex=0) const |
Returns the destination object with which this object connects that satisfies the given criteria at the specified index. More... | |
FbxObject * | FindDstObject (const char *pName, int pStartIndex=0) const |
Searches the destination object with the specified name, starting at the specified index. More... | |
FbxObject * | FindDstObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const |
Searches the destination object with the specified name which satisfies the given criteria, starting at the specified index. More... | |
template<class T > | |
bool | DisconnectAllDstObject () |
Disconnects this object from all destination objects of the specified class type. More... | |
template<class T > | |
bool | DisconnectAllDstObject (const FbxCriteria &pCriteria) |
Disconnects this object from all destination objects that are the specified class type and that satisfy the given criteria. More... | |
template<class T > | |
int | GetDstObjectCount () const |
Returns the number of destination objects of the specified class type with which this object connects. More... | |
template<class T > | |
int | GetDstObjectCount (const FbxCriteria &pCriteria) const |
Returns the number of destination objects with which this object connects that are the specified class type and that satisfy the given criteria. More... | |
template<class T > | |
T * | GetDstObject (int pIndex=0) const |
Returns the destination object with which this object connects that is the specified class type at the specified index. More... | |
template<class T > | |
T * | GetDstObject (const FbxCriteria &pCriteria, int pIndex=0) const |
Returns the destination object with which this object connects that is the specified class type and that satisfies the given criteria at the specified index. More... | |
template<class T > | |
T * | FindDstObject (const char *pName, int pStartIndex=0) const |
Searches the destination object with the specified name which is of the specified class type, starting at the specified index. More... | |
template<class T > | |
T * | FindDstObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const |
Searches the destination object with the specified name that is the specified class type and that satisfies the given criteria, starting at the specified index. More... | |
FbxProperty | GetFirstProperty () const |
Returns the first property of this object. More... | |
FbxProperty | GetNextProperty (const FbxProperty &pProperty) const |
Returns the next property of this object that follows the specified property. More... | |
FbxProperty | FindProperty (const char *pName, bool pCaseSensitive=true) const |
Searches a property by name. More... | |
FbxProperty | FindProperty (const char *pName, const FbxDataType &pDataType, bool pCaseSensitive=true) const |
Searches a property by name and data type. More... | |
FbxProperty | FindPropertyHierarchical (const char *pName, bool pCaseSensitive=true) const |
Searches a property by full name. More... | |
FbxProperty | FindPropertyHierarchical (const char *pName, const FbxDataType &pDataType, bool pCaseSensitive=true) const |
Searches a property by full name and data type. More... | |
FbxProperty | GetClassRootProperty () |
Returns the class root property. More... | |
bool | ConnectSrcProperty (const FbxProperty &pProperty) |
Connects this object to a source property. More... | |
bool | IsConnectedSrcProperty (const FbxProperty &pProperty) |
Determines whether this object connects with the specified source property. More... | |
bool | DisconnectSrcProperty (const FbxProperty &pProperty) |
Disconnects this object from the specified source property. More... | |
int | GetSrcPropertyCount () const |
Returns the number of source properties with which this object connects. More... | |
FbxProperty | GetSrcProperty (int pIndex=0) const |
Returns the source property at the specified index with which this object connects. More... | |
FbxProperty | FindSrcProperty (const char *pName, int pStartIndex=0) const |
Searches a source property with which this object connects that has a specific name, starting at the specified index. More... | |
bool | ConnectDstProperty (const FbxProperty &pProperty) |
Connects this object to a destination property. More... | |
bool | IsConnectedDstProperty (const FbxProperty &pProperty) |
Determines if this object connects with the specified destination property. More... | |
bool | DisconnectDstProperty (const FbxProperty &pProperty) |
Disconnects this object from the specified destination property. More... | |
int | GetDstPropertyCount () const |
Returns the number of destination properties with which this object connects. More... | |
FbxProperty | GetDstProperty (int pIndex=0) const |
Returns the destination property at the specified index with which this object connects. More... | |
FbxProperty | FindDstProperty (const char *pName, int pStartIndex=0) const |
Searches a destination property with which this object connects that has a specific name, starting at the specified index. More... | |
int | ContentUnload () |
Unloads this object's content using the offload peripheral that is currently set in the document then flushes it from memory. More... | |
int | ContentLoad () |
Loads this object's content using the offload peripheral that is currently set in the document. More... | |
bool | ContentIsLoaded () const |
Judges if this object's content is loaded. More... | |
void | ContentDecrementLockCount () |
Decreases the content lock count of an object. More... | |
void | ContentIncrementLockCount () |
Increases the content lock count of an object. More... | |
bool | ContentIsLocked () const |
Judges if this object's content is locked. More... | |
virtual bool | ContentWriteTo (FbxStream &pStream) const |
Writes the content of the object to the given stream. More... | |
virtual bool | ContentReadFrom (const FbxStream &pStream) |
Reads the content of the object from the given stream. More... | |
void | EmitMessage (FbxMessage *pMessage) const |
Emits a message in all available message emitters in the document or SDK manager. More... | |
virtual const char * | Localize (const char *pID, const char *pDefault=((void *) 0)) const |
Localization helper function, it calls the implementation of FBX SDK manager. More... | |
FbxLibrary * | GetParentLibrary () const |
Returns a handle on the parent library of this object. More... | |
bool | AddImplementation (FbxImplementation *pImplementation) |
Adds an implementation. More... | |
bool | RemoveImplementation (FbxImplementation *pImplementation) |
Removes an implementation. More... | |
bool | HasDefaultImplementation (void) const |
Determines if this shading node has a default implementation. More... | |
FbxImplementation * | GetDefaultImplementation (void) const |
Returns the default implementation of this shading node. More... | |
bool | SetDefaultImplementation (FbxImplementation *pImplementation) |
Sets the default implementation of this shading node. More... | |
int | GetImplementationCount (const FbxImplementationFilter *pCriteria=((void *) 0)) const |
Returns the number of implementations that satisfy a given criteria. More... | |
FbxImplementation * | GetImplementation (int pIndex, const FbxImplementationFilter *pCriteria=((void *) 0)) const |
Returns the implementation at the specified index that satisfies the given criteria. More... | |
virtual FbxString | GetUrl () const |
Returns the URL of this object. More... | |
virtual bool | SetUrl (char *pUrl) |
Sets the URL of this object. More... | |
void | SetRuntimeClassId (const FbxClassId &pClassId) |
Set the run-time ClassId for this class. More... | |
FbxClassId | GetRuntimeClassId () const |
Retrieve the run-time ClassId for this object. More... | |
bool | IsRuntime (const FbxClassId &pClassId) const |
Test if this class is a hierarchical children of the specified class type. More... | |
bool | IsRuntimePlug () const |
Find out if the ClassId was registered during run-time rather than at compile time. More... | |
void | SetObjectFlags (EObjectFlag pFlags, bool pValue) |
Set the state of object flags. More... | |
bool | GetObjectFlags (EObjectFlag pFlags) const |
Get the state of object flags. More... | |
void | SetAllObjectFlags (FbxUInt pFlags) |
Override all object flags at once. More... | |
FbxUInt | GetAllObjectFlags () const |
Get all object flags at once. More... | |
virtual FbxObject & | Copy (const FbxObject &pObject) |
Copy an object content into this object. More... | |
virtual FbxObject * | Clone (FbxObject::ECloneType pCloneType=eDeepClone, FbxObject *pContainer=((void *) 0), void *pSet=((void *) 0)) const |
Creates a clone of this object. More... | |
bool | IsAReferenceTo () const |
Checks if this object is a reference clone of another object. More... | |
FbxObject * | GetReferenceTo () const |
If this object is a reference clone, returns the original object (from which the clone originates). More... | |
bool | IsReferencedBy () const |
Checks if any objects are reference cloned from this object. More... | |
int | GetReferencedByCount () const |
Returns the number of objects that are reference clones of this object. More... | |
FbxObject * | GetReferencedBy (int pIndex) const |
Returns a reference clone of this object at the specified index. More... | |
void | SetName (const char *pName) |
Sets the name of this object. More... | |
const char * | GetName () const |
Returns the full name of this object. More... | |
FbxString | GetNameWithoutNameSpacePrefix () const |
Returns the name of the object without the namespace qualifier. More... | |
FbxString | GetNameWithNameSpacePrefix () const |
Returns the name of the object with the namespace qualifier. More... | |
void | SetInitialName (const char *pName) |
Sets the initial name of the object. More... | |
const char * | GetInitialName () const |
Returns the initial name of the object. More... | |
FbxString | GetNameSpaceOnly () |
Returns the namespace of the object. More... | |
void | SetNameSpace (FbxString pNameSpace) |
Sets the namespace of the object. More... | |
FbxArray< FbxString * > | GetNameSpaceArray (char identifier) |
Returns an array of all the namespaces for this object. More... | |
FbxString | GetNameOnly () const |
Returns only the name (no namespace or prefix) of the object. More... | |
FbxString | GetNameSpacePrefix () const |
Returns the namespace qualifier. More... | |
const FbxUInt64 & | GetUniqueID () const |
Returns the unique ID of this object. More... | |
![]() | |
void | AddListener (FbxEventHandler &pHandler) |
Add the specified event handler to current emitter list. More... | |
void | RemoveListener (FbxEventHandler &pHandler) |
Remove the specified event handler from current emitter list. More... | |
template<typename EventType > | |
void | Emit (const EventType &pEvent) const |
Emit an event with the specified the event type. More... | |
Static Public Member Functions | |
static FbxPose * | Create (FbxManager *pManager, const char *pName) |
static FbxPose * | Create (FbxObject *pContainer, const char *pName) |
![]() | |
static FbxObject * | Create (FbxManager *pManager, const char *pName) |
static FbxObject * | Create (FbxObject *pContainer, const char *pName) |
static FbxString | RemovePrefix (char *pName) |
Removes the prefix of pName. More... | |
static FbxString | StripPrefix (FbxString &lName) |
Strips the prefix of pName. More... | |
static FbxString | StripPrefix (const char *pName) |
Strips the prefix of pName. More... | |
Static Public Attributes | |
static FbxClassId | ClassId |
![]() | |
static FbxClassId | ClassId |
Protected Member Functions | |
virtual | ~ FbxPose () |
FbxPose (FbxManager &pManager, const char *pName) | |
![]() | |
virtual | ~ FbxObject () |
virtual void | Construct (const FbxObject *pFrom) |
Optional constructor override, automatically called by default constructor. More... | |
virtual void | ConstructProperties (bool pForceSet) |
Optional property constructor override, automatically called by default constructor. More... | |
virtual void | Destruct (bool pRecursive) |
Optional destructor override, automatically called by default destructor. More... | |
virtual void | ContentClear () |
Clears this object's content from memory. More... | |
virtual FbxPeripheral * | GetPeripheral () |
Retrieves the peripheral of that object. More... | |
Static Protected Member Functions | |
static FbxPose * | Allocate (FbxManager *pManager, const char *pName, const FbxPose *pFrom) |
![]() | |
static FbxObject * | Allocate (FbxManager *pManager, const char *pName, const FbxObject *pFrom) |
Friends | |
class | fbxsdk ::FbxManager |
template<typename T > | |
T * | fbxsdk ::FbxNew () |
template<typename T , typename T1 > | |
T * | fbxsdk ::FbxNew (T1 &p1) |
template<typename T , typename T1 > | |
T * | fbxsdk ::FbxNew (const T1 &p1) |
template<typename T , typename T1 , typename T2 > | |
T * | fbxsdk ::FbxNew (T1 &p1, T2 &p2) |
template<typename T , typename T1 , typename T2 > | |
T * | fbxsdk ::FbxNew (T1 &p1, const T2 &p2) |
template<typename T , typename T1 , typename T2 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2) |
template<typename T , typename T1 , typename T2 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2) |
template<typename T , typename T1 , typename T2 , typename T3 > | |
T * | fbxsdk ::FbxNew (T1 &p1, T2 &p2, T3 &p3) |
template<typename T , typename T1 , typename T2 , typename T3 > | |
T * | fbxsdk ::FbxNew (T1 &p1, T2 &p2, const T3 &p3) |
template<typename T , typename T1 , typename T2 , typename T3 > | |
T * | fbxsdk ::FbxNew (T1 &p1, const T2 &p2, T3 &p3) |
template<typename T , typename T1 , typename T2 , typename T3 > | |
T * | fbxsdk ::FbxNew (T1 &p1, const T2 &p2, const T3 &p3) |
template<typename T , typename T1 , typename T2 , typename T3 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3) |
template<typename T , typename T1 , typename T2 , typename T3 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, const T3 &p3) |
template<typename T , typename T1 , typename T2 , typename T3 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3) |
template<typename T , typename T1 , typename T2 , typename T3 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (T1 &p1, T2 &p2, T3 &p3, T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (T1 &p1, T2 &p2, T3 &p3, const T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (T1 &p1, T2 &p2, const T3 &p3, T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (T1 &p1, T2 &p2, const T3 &p3, const T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (T1 &p1, const T2 &p2, T3 &p3, T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (T1 &p1, const T2 &p2, T3 &p3, const T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (T1 &p1, const T2 &p2, const T3 &p3, T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, const T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, const T3 &p3, T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, const T3 &p3, const T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, const T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (T1 &p1, T2 &p2, T3 &p3, T4 &p4, T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, T4 &p4, T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, T4 &p4, T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, const T3 &p3, T4 &p4, T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, const T4 &p4, T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, T4 &p4, const T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, T4 &p4, T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, const T4 &p4, T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, T4 &p4, const T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, T4 &p4, const T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5, const T6 &p6) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5, const T6 &p6, const T7 &p7) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5, const T6 &p6, const T7 &p7, const T8 &p8) |
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 > | |
T * | fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5, const T6 &p6, const T7 &p7, const T8 &p8, const T9 &p9) |
template<typename T > | |
void | fbxsdk ::FbxDelete (T *p) |
template<typename T > | |
void | fbxsdk ::FbxDelete (const T *p) |
template<typename T > | |
T * | fbxsdk ::FbxNewArray (const int n) |
template<typename T > | |
void | fbxsdk ::FbxDeleteArray (T *p) |
Search Section | |
enum | ENameComponent { eInitialNameComponent = 1, eCurrentNameComponent = 2, eAllNameComponents = 3 } |
This structure defines the strategy of comparing FBX node name. More... | |
int | Find (const FbxNameHandler &pNodeName, char pCompareWhat=eAllNameComponents) const |
Look in the FbxPose object for the given node name. More... | |
int | Find (const FbxNode *pNode) const |
Look in the FbxPose object for the given node. More... | |
Utility Section | |
bool | IsValidBindPose (FbxNode *pRoot, double pMatrixCmpTolerance=0.0001, FbxStatus *pStatus=((void *) 0)) |
Check this BindPose and report an error if all the conditions to a valid bind pose are not met. More... | |
bool | IsValidBindPoseVerbose (FbxNode *pRoot, NodeList &pMissingAncestors, NodeList &pMissingDeformers, NodeList &pMissingDeformersAncestors, NodeList &pWrongMatrices, double pMatrixCmpTolerance=0.0001, FbxStatus *pStatus=((void *) 0)) |
Same as IsValidBindPose() but slower because it will not stop as soon as a failure occurs. More... | |
bool | IsValidBindPoseVerbose (FbxNode *pRoot, FbxUserNotification *pUserNotification, double pMatrixCmpTolerance=0.0001, FbxStatus *pStatus=((void *) 0)) |
Same as IsValidBindPose() but slower because it will not stop as soon as a failure occurs. More... | |
static bool | GetPosesContaining (FbxManager &pManager, FbxNode *pNode, PoseList &pPoseList, FbxArray< int > &pIndex) |
Get the list of Poses objects that contain the node with name pNodeName. More... | |
static bool | GetPosesContaining (FbxScene *pScene, FbxNode *pNode, PoseList &pPoseList, FbxArray< int > &pIndex) |
Get the list of Poses objects that contain the node with name pNodeName. More... | |
static bool | GetBindPoseContaining (FbxManager &pManager, FbxNode *pNode, PoseList &pPoseList, FbxArray< int > &pIndex) |
Get the list of BindPose objects that contain the node with name pNodeName. More... | |
static bool | GetBindPoseContaining (FbxScene *pScene, FbxNode *pNode, PoseList &pPoseList, FbxArray< int > &pIndex) |
Get the list of BindPose objects that contain the node with name pNodeName. More... | |
static bool | GetRestPoseContaining (FbxManager &pManager, FbxNode *pNode, PoseList &pPoseList, FbxArray< int > &pIndex) |
Get the list of RestPose objects that contain the node with name pNodeName. More... | |
static bool | GetRestPoseContaining (FbxScene *pScene, FbxNode *pNode, PoseList &pPoseList, FbxArray< int > &pIndex) |
Get the list of RestPose objects that contain the node with name pNodeName. More... | |
Additional Inherited Members | |
![]() | |
FbxProperty | RootProperty |
The root property that holds all children property for this object. More... | |
typedef FbxObject ParentClass |
enum ENameComponent |
This structure defines the strategy of comparing FBX node name.
FBX node has an initial name and a current name (refer to FbxNameHandler). The structure defines which name to use when compare two nodes.
Enumerator | |
---|---|
eInitialNameComponent | |
eCurrentNameComponent | use initial name when compare two nodes |
eAllNameComponents | use current name when compare two nodes |
Definition at line 172 of file fbxpose.h.
|
inlineprotectedvirtual |
|
inlineprotected |
|
inlinevirtual |
|
static |
|
staticprotected |
void SetIsBindPose | ( | bool | pIsBindPose | ) |
Set the type of pose.
pIsBindPose | If true, type will be bind pose, else rest pose. |
|
inline |
Pose identifier flag.
true
if this object holds BindPose data.
|
inline |
|
inline |
Get number of stored items.
int Add | ( | FbxNode * | pNode, |
const FbxMatrix & | pMatrix, | ||
bool | pLocalMatrix = false , |
||
bool | pMultipleBindPose = true |
||
) |
Stores the pose transformation for the given node.
pNode | pointer to the node for which the pose is stored. |
pMatrix | Pose transform of the node. |
pLocalMatrix | Flag to indicate if pMatrix is defined in Local or Global space. |
pMultipleBindPose | Flag to indicate if multiple bind pose exist. If this is false, all matrix for one node should be same in different bind pose. |
void Remove | ( | int | pIndex | ) |
Remove the pIndexth item from the Pose object.
pIndex | Index of the item to be removed. |
FbxNameHandler GetNodeName | ( | int | pIndex | ) | const |
Get the node name.
pIndex | Index of the queried item. |
FbxNode* GetNode | ( | int | pIndex | ) | const |
Get the node.
pIndex | Index of the queried item. |
const FbxMatrix& GetMatrix | ( | int | pIndex | ) | const |
Get the transform matrix.
pIndex | Index of the queried item. |
bool IsLocalMatrix | ( | int | pIndex | ) | const |
Get the type of the matrix.
pIndex | Index of the queried item. |
true
if the matrix is defined in the Local coordinate space and false otherwise. false
. int Find | ( | const FbxNameHandler & | pNodeName, |
char | pCompareWhat = eAllNameComponents |
||
) | const |
Look in the FbxPose object for the given node name.
pNodeName | Name of the node we are looking for. |
pCompareWhat | Bitwise or of the following flags: INTIALNAME_COMPONENT, eCurrentNameComponent |
int Find | ( | const FbxNode * | pNode | ) | const |
Look in the FbxPose object for the given node.
pNode | the node we are looking for. |
|
static |
Get the list of Poses objects that contain the node with name pNodeName.
This method will look in all the poses of all the scenes.
pManager | The manager owning the poses and scenes. |
pNode | The node being explored. |
pPoseList | List of BindPoses/RestPoses that have the node. |
pIndex | List of indices of the nodes in the corresponding poses lists. |
true
if the node belongs to at least one Pose (either a BindPose or a RestPose).
|
static |
Get the list of Poses objects that contain the node with name pNodeName.
pScene | Scene owning the poses. |
pNode | The node being explored. |
pPoseList | List of BindPoses/RestPoses that have the node. |
pIndex | List of indices of the nodes in the corresponding poses lists. |
true
if the node belongs to at least one Pose (either a BindPose or a RestPose).
|
static |
Get the list of BindPose objects that contain the node with name pNodeName.
This method will look in all the bind poses of all the scenes.
pManager | The manager owning the poses. |
pNode | The node being explored. |
pPoseList | List of BindPoses that have the node. |
pIndex | List of indices of the nodes in the corresponding bind poses lists. |
true
if the node belongs to at least one BindPose.
|
static |
Get the list of BindPose objects that contain the node with name pNodeName.
pScene | The scene owning the poses. |
pNode | The node being explored. |
pPoseList | List of BindPoses that have the node. |
pIndex | List of indices of the nodes in the corresponding bind poses lists. |
true
if the node belongs to at least one BindPose.
|
static |
Get the list of RestPose objects that contain the node with name pNodeName.
This method will look in all the bind poses of all the scenes.
pManager | The manager owning the poses. |
pNode | The node being explored. |
pPoseList | List of RestPoses that have the node. |
pIndex | List of indices of the nodes in the corresponding rest poses lists. |
true
if the node belongs to at least one RestPose.
|
static |
Get the list of RestPose objects that contain the node with name pNodeName.
pScene | The scene owning the poses. |
pNode | The node being explored. |
pPoseList | List of RestPoses that have the node. |
pIndex | List of indices of the nodes in the corresponding rest poses lists. |
true
if the node belongs to at least one RestPose. bool IsValidBindPose | ( | FbxNode * | pRoot, |
double | pMatrixCmpTolerance = 0.0001 , |
||
FbxStatus * | pStatus = ((void *) 0) |
||
) |
Check this BindPose and report an error if all the conditions to a valid bind pose are not met.
The conditions are:
pRoot | This node is used as the stop point when visiting the parents (cannot be NULL). |
pMatrixCmpTolerance | Tolerance value when comparing the matrices. |
pStatus | The FbxStatus object to hold error codes. |
bool IsValidBindPoseVerbose | ( | FbxNode * | pRoot, |
NodeList & | pMissingAncestors, | ||
NodeList & | pMissingDeformers, | ||
NodeList & | pMissingDeformersAncestors, | ||
NodeList & | pWrongMatrices, | ||
double | pMatrixCmpTolerance = 0.0001 , |
||
FbxStatus * | pStatus = ((void *) 0) |
||
) |
Same as IsValidBindPose() but slower because it will not stop as soon as a failure occurs.
Instead, keeps running to accumulate the faulty nodes (stored in the appropriate array). It is then up to the caller to fill the UserNotification if desired.
pRoot | This node is used as the stop point when visiting the parents (cannot be NULL). |
pMissingAncestors | Each ancestor missing from the BindPose is added to this list. |
pMissingDeformers | Each deformer missing from the BindPose is added to this list. |
pMissingDeformersAncestors | Each deformer ancestors missing from the BindPose is added to this list. |
pWrongMatrices | Nodes that yield to a wrong matrix comparisons are added to this list. |
pMatrixCmpTolerance | Tolerance value when comparing the matrices. |
pStatus | The FbxStatus object to hold error codes. |
bool IsValidBindPoseVerbose | ( | FbxNode * | pRoot, |
FbxUserNotification * | pUserNotification, | ||
double | pMatrixCmpTolerance = 0.0001 , |
||
FbxStatus * | pStatus = ((void *) 0) |
||
) |
Same as IsValidBindPose() but slower because it will not stop as soon as a failure occurs.
Instead, keeps running to accumulate the faulty nodes and send them directly to the UserNotification.
pRoot | This node is used as the stop point when visiting the parents (cannot be NULL). |
pUserNotification | Pointer to the user notification where the messages will be accumulated. |
pMatrixCmpTolerance | Tolerance value when comparing the matrices. |
pStatus | The FbxStatus object to hold error codes. |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
static |