FBX C++ API Reference
|
#include <fbxaffinematrix.h>
FBX SDK affine matrix class.
Matrices are defined using the Column Major scheme. When a FbxAMatrix represents a transformation (translation, rotation and scale), the last row of the matrix represents the translation part of the transformation.
Definition at line 31 of file fbxaffinematrix.h.
Public Member Functions | |
bool | IsIdentity (const double pThreshold=(1.0e-6)) |
Find out if the matrix is equal to identity matrix. More... | |
![]() | |
FbxVectorTemplate4 () | |
FbxVectorTemplate4 (T pValue) | |
FbxVectorTemplate4 (T pData0, T pData1, T pData2, T pData3) | |
~FbxVectorTemplate4 () | |
T & | operator[] (int pIndex) |
const T & | operator[] (int pIndex) const |
operator FbxVectorTemplate3< T > & () const | |
FbxVectorTemplate4< T > & | operator= (const T &pValue) |
FbxVectorTemplate4< T > & | operator= (const FbxVectorTemplate3< T > &pValue) |
FbxVectorTemplate4< T > & | operator= (const FbxVectorTemplate4< T > &pVector) |
bool | operator== (const FbxVectorTemplate4< T > &pVector) const |
bool | operator!= (const FbxVectorTemplate4< T > &pVector) const |
T * | Buffer () |
const T * | Buffer () const |
Constructors and Destructor | |
FbxAMatrix () | |
Constructor. More... | |
FbxAMatrix (const FbxAMatrix &pOther) | |
Copy constructor. More... | |
FbxAMatrix (const FbxVector4 &pT, const FbxVector4 &pR, const FbxVector4 &pS) | |
Constructor. More... | |
~FbxAMatrix () | |
Destructor. More... | |
Access | |
double | Get (int pY, int pX) const |
Retrieve matrix element. More... | |
FbxVector4 | GetT () const |
Extract translation vector. More... | |
FbxVector4 | GetR () const |
Extract rotation vector. More... | |
FbxQuaternion | GetQ () const |
Extract quaternion vector. More... | |
FbxVector4 | GetS () const |
Extract scale vector. More... | |
FbxVector4 | GetRow (int pY) const |
Extract a row vector. More... | |
FbxVector4 | GetColumn (int pX) const |
Extract a column vector. More... | |
void | SetIdentity () |
Set matrix to identity. More... | |
void | SetT (const FbxVector4 &pT) |
Set matrix's translation. More... | |
void | SetR (const FbxVector4 &pR) |
Set matrix's Euler rotation. More... | |
void | SetQ (const FbxQuaternion &pQ) |
Set matrix's quaternion. More... | |
void | SetS (const FbxVector4 &pS) |
Set matrix's scale. More... | |
void | SetTRS (const FbxVector4 &pT, const FbxVector4 &pR, const FbxVector4 &pS) |
Set matrix. More... | |
void | SetTQS (const FbxVector4 &pT, const FbxQuaternion &pQ, const FbxVector4 &pS) |
Set matrix. More... | |
FbxAMatrix & | operator= (const FbxAMatrix &pM) |
Assignment operator. More... | |
Scalar Operations | |
FbxAMatrix | operator* (double pValue) const |
Multiply matrix by a scalar value. More... | |
FbxAMatrix | operator/ (double pValue) const |
Divide matrix by a scalar value. More... | |
FbxAMatrix & | operator*= (double pValue) |
Multiply matrix by a scalar value. More... | |
FbxAMatrix & | operator/= (double pValue) |
Divide matrix by a scalar value. More... | |
Vector Operations | |
FbxVector4 | MultT (const FbxVector4 &pVector4) const |
Multiply matrix by a translation vector. More... | |
FbxVector4 | MultR (const FbxVector4 &pVector4) const |
Multiply matrix by an Euler rotation vector. More... | |
FbxQuaternion | MultQ (const FbxQuaternion &pQuaternion) const |
Multiply matrix by a quaternion. More... | |
FbxVector4 | MultS (const FbxVector4 &pVector4) const |
Multiply matrix by a scale vector. More... | |
Matrix Operations | |
FbxAMatrix | operator- () const |
Unary minus operator. More... | |
FbxAMatrix | operator* (const FbxAMatrix &pOther) const |
Multiply two matrices together. More... | |
FbxAMatrix & | operator*= (const FbxAMatrix &pOther) |
Multiply two matrices together. More... | |
FbxAMatrix | Inverse () const |
Calculate the matrix inverse. More... | |
FbxAMatrix | Transpose () const |
Calculate the matrix transpose. More... | |
FbxAMatrix | Slerp (const FbxAMatrix &pOther, double pWeight) const |
Calculate a spherical linear interpolation matrix. More... | |
Boolean Operations | |
bool | operator== (const FbxAMatrix &pOther) const |
Equivalence operator. More... | |
bool | operator!= (const FbxAMatrix &pOther) const |
Non-equivalence operator. More... | |
Casting | |
typedef const | double(kDouble44)[4][4] |
Define 4*4 array as a new type. More... | |
operator double * () | |
Cast the matrix in a double pointer. More... | |
operator const double * () const | |
Cast the matrix in a const double pointer. More... | |
kDouble44 & | Double44 () const |
Cast the matrix in a reference to a 4*4 array. More... | |
Additional Inherited Members | |
![]() | |
T | mData [4] |
typedef const double(kDouble44)[4][4] |
Define 4*4 array as a new type.
Definition at line 303 of file fbxaffinematrix.h.
FbxAMatrix | ( | ) |
Constructor.
FbxAMatrix | ( | const FbxAMatrix & | pOther | ) |
Copy constructor.
pOther | FbxAMatrix copied to this one. |
FbxAMatrix | ( | const FbxVector4 & | pT, |
const FbxVector4 & | pR, | ||
const FbxVector4 & | pS | ||
) |
Constructor.
pT | Translation vector. |
pR | Euler rotation vector. |
pS | Scale vector. |
~FbxAMatrix | ( | ) |
Destructor.
double Get | ( | int | pY, |
int | pX | ||
) | const |
Retrieve matrix element.
pY | Row index. |
pX | Column index. |
FbxVector4 GetT | ( | ) | const |
Extract translation vector.
FbxVector4 GetR | ( | ) | const |
Extract rotation vector.
FbxQuaternion GetQ | ( | ) | const |
FbxVector4 GetS | ( | ) | const |
Extract scale vector.
FbxVector4 GetRow | ( | int | pY | ) | const |
Extract a row vector.
pY | Row index. |
FbxVector4 GetColumn | ( | int | pX | ) | const |
Extract a column vector.
pX | Column index. |
void SetIdentity | ( | ) |
Set matrix to identity.
void SetT | ( | const FbxVector4 & | pT | ) |
Set matrix's translation.
pT | Translation vector. |
void SetR | ( | const FbxVector4 & | pR | ) |
Set matrix's Euler rotation.
pR | X, Y and Z rotation values expressed as a vector. |
void SetQ | ( | const FbxQuaternion & | pQ | ) |
Set matrix's quaternion.
pQ | The new quaternion. |
void SetS | ( | const FbxVector4 & | pS | ) |
Set matrix's scale.
pS | X, Y and Z scaling factors expressed as a vector. |
void SetTRS | ( | const FbxVector4 & | pT, |
const FbxVector4 & | pR, | ||
const FbxVector4 & | pS | ||
) |
Set matrix.
pT | Translation vector. |
pR | Rotation vector. |
pS | Scale vector. |
void SetTQS | ( | const FbxVector4 & | pT, |
const FbxQuaternion & | pQ, | ||
const FbxVector4 & | pS | ||
) |
Set matrix.
pT | Translation vector. |
pQ | Quaternion vector. |
pS | Scale vector. |
FbxAMatrix& operator= | ( | const FbxAMatrix & | pM | ) |
Assignment operator.
pM | FbxAMatrix assigned to this one. |
FbxAMatrix operator* | ( | double | pValue | ) | const |
Multiply matrix by a scalar value.
pValue | Scalar value. |
FbxAMatrix operator/ | ( | double | pValue | ) | const |
Divide matrix by a scalar value.
pValue | Scalar value. |
FbxAMatrix& operator*= | ( | double | pValue | ) |
Multiply matrix by a scalar value.
pValue | Scalar value. |
FbxAMatrix& operator/= | ( | double | pValue | ) |
Divide matrix by a scalar value.
pValue | Scalar value. |
FbxVector4 MultT | ( | const FbxVector4 & | pVector4 | ) | const |
Multiply matrix by a translation vector.
pVector4 | Translation vector. |
FbxVector4 MultR | ( | const FbxVector4 & | pVector4 | ) | const |
Multiply matrix by an Euler rotation vector.
pVector4 | Euler Rotation vector. |
FbxQuaternion MultQ | ( | const FbxQuaternion & | pQuaternion | ) | const |
Multiply matrix by a quaternion.
pQuaternion | Rotation value. |
FbxVector4 MultS | ( | const FbxVector4 & | pVector4 | ) | const |
Multiply matrix by a scale vector.
pVector4 | Scaling vector. |
FbxAMatrix operator- | ( | ) | const |
Unary minus operator.
FbxAMatrix operator* | ( | const FbxAMatrix & | pOther | ) | const |
Multiply two matrices together.
pOther | A Matrix. |
FbxAMatrix& operator*= | ( | const FbxAMatrix & | pOther | ) |
Multiply two matrices together.
pOther | A Matrix. |
FbxAMatrix Inverse | ( | ) | const |
Calculate the matrix inverse.
FbxAMatrix Transpose | ( | ) | const |
Calculate the matrix transpose.
FbxAMatrix Slerp | ( | const FbxAMatrix & | pOther, |
double | pWeight | ||
) | const |
Calculate a spherical linear interpolation matrix.
pOther | The other rotation matrix to interpolate with. |
pWeight | A value between 0.0 and 1.0 to specify the interpolation amount. |
bool operator== | ( | const FbxAMatrix & | pOther | ) | const |
Equivalence operator.
pOther | The matrix to be compared to this. |
true
if the two matrices are equal (each element is within a FBXSDK_TOLERANCE tolerance) and false
otherwise. bool operator!= | ( | const FbxAMatrix & | pOther | ) | const |
Non-equivalence operator.
pOther | The matrix to be compared to this. |
false
if the two matrices are equal (each element is within a FBXSDK_TOLERANCE tolerance) and true
otherwise. operator double * | ( | ) |
Cast the matrix in a double pointer.
operator const double * | ( | ) | const |
Cast the matrix in a const double pointer.
|
inline |
bool IsIdentity | ( | const double | pThreshold = (1.0e-6) | ) |
Find out if the matrix is equal to identity matrix.
true
if the matrix is equal to identity matrix, false
otherwise.