This reference page is linked to from the following overview topics: List of Python Fbx classes.
#include <fbxquaternion.h>
FBX SDK quaternion class.
Quaternions form a four-dimensional normed division algebra over the real numbers. It is for calculations involving three-dimensional rotations.
Definition at line 27 of file fbxquaternion.h.
Constructors and Destructor |
|
| FbxQuaternion () | |
| Constructor. |
|
| FbxQuaternion (const FbxQuaternion &pV) | |
| Copy constructor. |
|
| FbxQuaternion (double pX, double pY, double pZ, double pW=1.0) | |
| Constructor. |
|
| ~FbxQuaternion () | |
| Destructor. |
|
Access |
|
| FbxQuaternion & | operator= (const FbxQuaternion &pQuaternion) |
| Assignment operation. |
|
| double & | operator[] (int pIndex) |
| Accessor. |
|
| const double & | operator[] (int pIndex) const |
| Accessor. |
|
| double | GetAt (int pIndex) const |
| Get a vector element. |
|
| void | SetAt (int pIndex, double pValue) |
| Set a vector element. |
|
| void | Set (double pX, double pY, double pZ, double pW=1.0) |
| Set vector. |
|
Scalar Operations |
|
| FbxQuaternion | operator+ (double pValue) const |
| The addition operator between the scalar
part of this quaternion and a scalar value, no influence on the
vector part of the quaternion. |
|
| FbxQuaternion | operator- (double pValue) const |
| The subtraction operator between the scalar
part of this quaternion and a scalar value, no influence on the
vector part of the quaternion. |
|
| FbxQuaternion | operator* (double pValue) const |
| Multiply all vector components by a value.
|
|
| FbxQuaternion | operator/ (double pValue) const |
| Divide all vector components by a value.
|
|
| FbxQuaternion & | operator+= (double pValue) |
| The in place addition operator between the
real part of this quaternion and a scalar value. |
|
| FbxQuaternion & | operator-= (double pValue) |
| The subtraction operator between the real
part of this quaternion and a scalar value. |
|
| FbxQuaternion & | operator*= (double pValue) |
| Multiply a value to all vector elements.
|
|
| FbxQuaternion & | operator/= (double pValue) |
| Divide all vector elements by a value.
|
|
Vector Operations |
|
| FbxQuaternion | operator- () const |
| Unary minus operator. |
|
| FbxQuaternion | operator+ (const FbxQuaternion &pQuaternion) const |
| Add two vectors together. |
|
| FbxQuaternion | operator- (const FbxQuaternion &pQuaternion) const |
| Subtract a quaternion from another
quaternion. |
|
| FbxQuaternion | operator* (const FbxQuaternion &pOther) const |
| The quaternion multiplication operator.
|
|
| FbxQuaternion | operator/ (const FbxQuaternion &pOther) const |
| The quaternion division operator. |
|
| FbxQuaternion & | operator+= (const FbxQuaternion &pQuaternion) |
| Add two quaternions together. |
|
| FbxQuaternion & | operator-= (const FbxQuaternion &pQuaternion) |
| Subtract a quaternion from another vector.
|
|
| FbxQuaternion & | operator*= (const FbxQuaternion &pOther) |
| The in place quaternion multiplication
operator. |
|
| FbxQuaternion & | operator/= (const FbxQuaternion &pOther) |
| The in place quaternion division operator.
|
|
| FbxQuaternion | Product (const FbxQuaternion &pOther) const |
| Return quaternion product. |
|
| double | DotProduct (const FbxQuaternion &pQuaternion) const |
| Return quaternion dot product. |
|
| void | Normalize () |
| Normalize the quaternion, length set to 1.
|
|
| void | Conjugate () |
| Calculate the quaternion conjugate. |
|
| double | Length () |
| Calculate the length (norm) of the
quaternion. |
|
| void | Inverse () |
| Calculate the inverse of the quaternion.
|
|
| void | ComposeSphericalXYZ (const FbxVector4 pEuler) |
| Create a Quaternion equivalent to the
supplied Euler XYZ in spherical coordinate. |
|
| FbxVector4 | DecomposeSphericalXYZ () const |
| Create an Euler XYZ equivalent to the
current quaternion. |
|
Boolean Operations |
|
| bool | operator== (const FbxQuaternion &pV) const |
| Equivalence operator. |
|
| bool | operator!= (const FbxQuaternion &pV) const |
| Non equivalence operator. |
|
Casting |
|
| operator double * () | |
| Cast the vector in a double pointer.
|
|
| operator const double * () const | |
| Cast the vector in a const double pointer.
|
|
Comparison methods |
|
| int | Compare (const FbxQuaternion &pQ2, const double pThreshold=FBXSDK_TOLERANCE) const |
| Comparison method. |
|
| FbxQuaternion | ( | ) |
Constructor.
Initialize to the multiplicative identity.
| FbxQuaternion | ( | const FbxQuaternion & | pV | ) |
Copy constructor.
| pV | FbxQuaternion object copied to this one. |
| FbxQuaternion | ( | double | pX, |
| double | pY, | ||
| double | pZ, | ||
| double | pW = 1.0 |
||
| ) |
Constructor.
| pX | The X component. |
| pY | The Y component. |
| pZ | The Z component. |
| pW | The W component. |
| ~FbxQuaternion | ( | ) |
Destructor.
| FbxQuaternion& operator= | ( | const FbxQuaternion & | pQuaternion | ) |
Assignment operation.
| pQuaternion | FbxQuaternion object assigned to this one. |
| double& operator[] | ( | int | pIndex | ) |
Accessor.
| pIndex | The index of the component to access. |
Reimplemented from FbxVectorTemplate4< T >.
| const double& operator[] | ( | int | pIndex | ) | const |
Accessor.
| pIndex | The index of the component to access. |
Reimplemented from FbxVectorTemplate4< T >.
| double GetAt | ( | int | pIndex | ) | const |
Get a vector element.
| pIndex | The index of the component to access. |
| void SetAt | ( | int | pIndex, |
| double | pValue | ||
| ) |
Set a vector element.
| pIndex | The index of the component to set. |
| pValue | The new value to set the component. |
| void Set | ( | double | pX, |
| double | pY, | ||
| double | pZ, | ||
| double | pW = 1.0 |
||
| ) |
Set vector.
| pX | The X component value. |
| pY | The Y component value. |
| pZ | The Z component value. |
| pW | The W component value. |
| FbxQuaternion operator+ | ( | double | pValue | ) | const |
The addition operator between the scalar part of this quaternion and a scalar value, no influence on the vector part of the quaternion.
| pValue | The scalar value to be added. |
| FbxQuaternion operator- | ( | double | pValue | ) | const |
The subtraction operator between the scalar part of this quaternion and a scalar value, no influence on the vector part of the quaternion.
| pValue | The scalar subtrahend. |
| FbxQuaternion operator* | ( | double | pValue | ) | const |
Multiply all vector components by a value.
| pValue | The value multiplying each component of the vector. |
| FbxQuaternion operator/ | ( | double | pValue | ) | const |
Divide all vector components by a value.
| pValue | The value dividing each component of the vector. |
| FbxQuaternion& operator+= | ( | double | pValue | ) |
The in place addition operator between the real part of this quaternion and a scalar value.
| pValue | The value to be added. |
| FbxQuaternion& operator-= | ( | double | pValue | ) |
The subtraction operator between the real part of this quaternion and a scalar value.
| pValue | The scalar subtrahend. |
| FbxQuaternion& operator*= | ( | double | pValue | ) |
Multiply a value to all vector elements.
| pValue | The value multiplying each component of the vector. |
| FbxQuaternion& operator/= | ( | double | pValue | ) |
Divide all vector elements by a value.
| pValue | The value dividing each component of the vector. |
| FbxQuaternion operator- | ( | ) | const |
Unary minus operator.
| FbxQuaternion operator+ | ( | const FbxQuaternion & | pQuaternion | ) | const |
Add two vectors together.
| pQuaternion | Quaternion to add. |
| FbxQuaternion operator- | ( | const FbxQuaternion & | pQuaternion | ) | const |
Subtract a quaternion from another quaternion.
| pQuaternion | Quaternion to subtract. |
| FbxQuaternion operator* | ( | const FbxQuaternion & | pOther | ) | const |
The quaternion multiplication operator.
| pOther | The quaternion to be multiplied with this quaternion. |
| FbxQuaternion operator/ | ( | const FbxQuaternion & | pOther | ) | const |
The quaternion division operator.
| pOther | The divisor quaternion. |
| FbxQuaternion& operator+= | ( | const FbxQuaternion & | pQuaternion | ) |
Add two quaternions together.
| pQuaternion | Quaternion to add. |
| FbxQuaternion& operator-= | ( | const FbxQuaternion & | pQuaternion | ) |
Subtract a quaternion from another vector.
| pQuaternion | Quaternion to subtract. |
| FbxQuaternion& operator*= | ( | const FbxQuaternion & | pOther | ) |
The in place quaternion multiplication operator.
| pOther | The quaternion to be multiplied with this quaternion. |
| FbxQuaternion& operator/= | ( | const FbxQuaternion & | pOther | ) |
The in place quaternion division operator.
| pOther | The divisor quaternion. |
| FbxQuaternion Product | ( | const FbxQuaternion & | pOther | ) | const |
Return quaternion product.
| pOther | The quaternion to be multiplied with this quaternion. |
| double DotProduct | ( | const FbxQuaternion & | pQuaternion | ) | const |
Return quaternion dot product.
| pQuaternion | Dot product quaternion. |
| void Normalize | ( | ) |
Normalize the quaternion, length set to 1.
| void Conjugate | ( | ) |
Calculate the quaternion conjugate.
| double Length | ( | ) |
Calculate the length (norm) of the quaternion.
| void Inverse | ( | ) |
Calculate the inverse of the quaternion.
| void ComposeSphericalXYZ | ( | const FbxVector4 | pEuler | ) |
Create a Quaternion equivalent to the supplied Euler XYZ in spherical coordinate.
| pEuler | The Euler XYZ angle. |
| FbxVector4 DecomposeSphericalXYZ | ( | ) | const |
Create an Euler XYZ equivalent to the current quaternion.
| bool operator== | ( | const FbxQuaternion & | pV | ) | const |
Equivalence operator.
| pV | The quaternion to be compared to this quaternion. |
true if the two quaternions are equal (each
element is within a FBXSDK_TOLERANCE tolerance), false
otherwise.| bool operator!= | ( | const FbxQuaternion & | pV | ) | const |
Non equivalence operator.
| pV | The quaternion to be compared to this. |
false if the two quaternions are equal (each
element is within a FBXSDK_TOLERANCE tolerance), true
otherwise.| operator double * | ( | ) |
Cast the vector in a double pointer.
| operator const double * | ( | ) | const |
Cast the vector in a const double pointer.
| int Compare | ( | const FbxQuaternion & | pQ2, |
| const double | pThreshold =
FBXSDK_TOLERANCE |
||
| ) | const |
Comparison method.
| pQ1 | First quaternion to compare |
| pQ2 | Second quaternion to compare |
| pThreshold | Epsilon for small number comparison |