#include
<kfbxxmatrix.h>
Matrices are defined using the Column Major scheme. When a KFbxXMatrix represents a transformation (translation, rotation and scale), the last row of the matrix represents the translation part of the transformation.
Definition at line 61 of file kfbxxmatrix.h.
Constructors and Destructor |
|
KFbxXMatrix () | |
Constructor. |
|
KFbxXMatrix (const KFbxXMatrix &pXMatrix) | |
Copy constructor. |
|
KFbxXMatrix (const KFbxVector4 &pT, const KFbxVector4 &pR, const KFbxVector4 &pS) | |
Constructor. |
|
~KFbxXMatrix () | |
Destructor. |
|
Access |
|
double | Get (int pY, int pX) const |
Retrieve matrix element. |
|
KFbxVector4 | GetT () const |
Extract translation vector. |
|
KFbxVector4 | GetR () const |
Extract rotation vector. |
|
KFbxQuaternion | GetQ () const |
Extract quaternion vector. |
|
KFbxVector4 | GetS () const |
Extract scale vector. |
|
KFbxVector4 | GetRow (int pY) const |
Extract a row vector. |
|
KFbxVector4 | GetColumn (int pX) const |
Extract a column vector. |
|
void | SetIdentity () |
Set matrix to identity. |
|
void | SetT (const KFbxVector4 &pT) |
Set matrix's translation. |
|
void | SetR (const KFbxVector4 &pR) |
Set matrix's Euler rotation. |
|
void | SetQ (const KFbxQuaternion &pQ) |
Set matrix's quaternion. |
|
void | SetS (const KFbxVector4 &pS) |
Set matrix's scale. |
|
void | SetTRS (const KFbxVector4 &pT, const KFbxVector4 &pR, const KFbxVector4 &pS) |
Set matrix. |
|
void | SetTQS (const KFbxVector4 &pT, const KFbxQuaternion &pQ, const KFbxVector4 &pS) |
Set matrix. |
|
KFbxXMatrix & | operator= (const KFbxXMatrix &pM) |
Assignment operator. |
|
Scalar Operations |
|
KFbxXMatrix | operator* (double pValue) const |
Multiply matrix by a scalar value. |
|
KFbxXMatrix | operator/ (double pValue) const |
Divide matrix by a scalar value. |
|
KFbxXMatrix & | operator*= (double pValue) |
Multiply matrix by a scalar value. |
|
KFbxXMatrix & | operator/= (double pValue) |
Divide matrix by a scalar value. |
|
Vector Operations |
|
KFbxVector4 | MultT (const KFbxVector4 &pVector4) const |
Multiply matrix by a translation vector.
|
|
KFbxVector4 | MultR (const KFbxVector4 &pVector4) const |
Multiply matrix by an Euler rotation vector.
|
|
KFbxQuaternion | MultQ (const KFbxQuaternion &pQuaternion) const |
Multiply matrix by a quaternion. |
|
KFbxVector4 | MultS (const KFbxVector4 &pVector4) const |
Multiply matrix by a scale vector. |
|
Matrix Operations |
|
KFbxXMatrix | operator- () const |
Unary minus operator. |
|
KFbxXMatrix | operator* (const KFbxXMatrix &pXMatrix) const |
Multiply two matrices together. |
|
KFbxXMatrix & | operator*= (const KFbxXMatrix &pXMatrix) |
Multiply two matrices together. |
|
KFbxXMatrix | Inverse () const |
Calculate the matrix inverse. |
|
KFbxXMatrix | Transpose () const |
Calculate the matrix transpose. |
|
Boolean Operations |
|
bool | operator== (const KFbxXMatrix &pXMatrix) const |
Equivalence operator. |
|
bool | operator!= (const KFbxXMatrix &pXMatrix) const |
Non-equivalence operator. |
|
Casting |
|
operator double * () | |
Cast the matrix in a double pointer.
|
|
operator const double * () const | |
Cast the matrix in a const double pointer.
|
|
typedef const | double (kDouble44)[4][4] |
Define 4*4 array as a new type. |
|
kDouble44 & | Double44 () const |
Cast the matrix in a reference to a 4*4
array. |
KFbxXMatrix | ( | ) |
Constructor.
KFbxXMatrix | ( | const KFbxXMatrix & | pXMatrix | ) |
Copy constructor.
pXMatrix | KFbxXMatrix copied to this one. |
KFbxXMatrix | ( | const KFbxVector4 & | pT, | |
const KFbxVector4 & | pR, | |||
const KFbxVector4 & | pS | |||
) |
Constructor.
pT | Translation vector. | |
pR | Euler rotation vector. | |
pS | Scale vector. |
~KFbxXMatrix | ( | ) |
Destructor.
Retrieve matrix element.
pY | Row index. | |
pX | Column index. |
KFbxVector4 GetT | ( | ) | const |
Extract translation vector.
Referenced by KFbxCharacterPose::GetLocalPosition().
KFbxVector4 GetR | ( | ) | const |
Extract rotation vector.
Referenced by KFbxCharacterPose::GetLocalPosition().
KFbxQuaternion GetQ | ( | ) | const |
Extract quaternion vector.
KFbxVector4 GetS | ( | ) | const |
KFbxVector4 GetRow | ( | int | pY | ) | const |
Extract a row vector.
pY | Row index. |
KFbxVector4 GetColumn | ( | int | pX | ) | const |
Extract a column vector.
pX | Column index. |
void SetIdentity | ( | ) |
Set matrix to identity.
void SetT | ( | const KFbxVector4 & | pT | ) |
Set matrix's translation.
pT | Translation vector. |
void SetR | ( | const KFbxVector4 & | pR | ) |
Set matrix's Euler rotation.
pR | X, Y and Z rotation values expressed as a vector. |
void SetQ | ( | const KFbxQuaternion & | pQ | ) |
Set matrix's quaternion.
pQ | The new quaternion. |
void SetS | ( | const KFbxVector4 & | pS | ) |
Set matrix's scale.
pS | X, Y and Z scaling factors expressed as a vector. |
void SetTRS | ( | const KFbxVector4 & | pT, | |
const KFbxVector4 & | pR, | |||
const KFbxVector4 & | pS | |||
) |
Set matrix.
pT | Translation vector. | |
pR | Rotation vector. | |
pS | Scale vector. |
Referenced by KFbxCharacterPose::GetOffset().
void SetTQS | ( | const KFbxVector4 & | pT, | |
const KFbxQuaternion & | pQ, | |||
const KFbxVector4 & | pS | |||
) |
Set matrix.
pT | Translation vector. | |
pQ | Quaternion vector. | |
pS | Scale vector. |
KFbxXMatrix& operator= | ( | const KFbxXMatrix & | pM | ) |
Assignment operator.
pM | KFbxXMatrix assigned to this one. |
KFbxXMatrix operator* | ( | double | pValue | ) | const |
Multiply matrix by a scalar value.
pValue | Scalar value. |
KFbxXMatrix operator/ | ( | double | pValue | ) | const |
Divide matrix by a scalar value.
pValue | Scalar value. |
KFbxXMatrix& operator*= | ( | double | pValue | ) |
Multiply matrix by a scalar value.
pValue | Scalar value. |
KFbxXMatrix& operator/= | ( | double | pValue | ) |
Divide matrix by a scalar value.
pValue | Scalar value. |
KFbxVector4 MultT | ( | const KFbxVector4 & | pVector4 | ) | const |
Multiply matrix by a translation vector.
pVector4 | Translation vector. |
KFbxVector4 MultR | ( | const KFbxVector4 & | pVector4 | ) | const |
Multiply matrix by an Euler rotation vector.
pVector4 | Euler Rotation vector. |
KFbxQuaternion MultQ | ( | const KFbxQuaternion & | pQuaternion | ) | const |
Multiply matrix by a quaternion.
pQuaternion | Rotation value. |
KFbxVector4 MultS | ( | const KFbxVector4 & | pVector4 | ) | const |
Multiply matrix by a scale vector.
pVector4 | Scaling vector. |
KFbxXMatrix operator- | ( | ) | const |
Unary minus operator.
KFbxXMatrix operator* | ( | const KFbxXMatrix & | pXMatrix | ) | const |
Multiply two matrices together.
pXMatrix | A Matrix. |
KFbxXMatrix& operator*= | ( | const KFbxXMatrix & | pXMatrix | ) |
Multiply two matrices together.
pXMatrix | A Matrix. |
KFbxXMatrix Inverse | ( | ) | const |
Calculate the matrix inverse.
KFbxXMatrix Transpose | ( | ) | const |
Calculate the matrix transpose.
bool operator== | ( | const KFbxXMatrix & | pXMatrix | ) | const |
Equivalence operator.
pXMatrix | The matrix to be compared to this. |
true
if the two matrices are equal (each element
is within a 1.0e-6 tolerance) and false
otherwise.bool operator!= | ( | const KFbxXMatrix & | pXMatrix | ) | const |
Non-equivalence operator.
pXMatrix | The matrix to be compared to this. |
false
if the two matrices are equal (each element
is within a 1.0e-6 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.
typedef const double | ( | kDouble44 | ) |
Define 4*4 array as a new type.
kDouble44& Double44 | ( | ) | const [inline] |
Cast the matrix in a reference to a 4*4 array.
Definition at line 327 of file kfbxxmatrix.h.