#include <FMQuaternion.h>
Public Member Functions | |
FMQuaternion () | |
Creates an empty FMQuaternion. | |
FMQuaternion (float _x, float _y, float _z, float _w) | |
Creates the quaternion with the given component values. | |
FMQuaternion (const float *values) | |
Creates the quaternion with the given component values. | |
FMQuaternion (const double *values) | |
See above. | |
FMQuaternion (const FMVector3 &axis, float angle) | |
Creates the quaternion from a given axis and angle of rotation. | |
operator float * () | |
Retrieves this quaternion as an array of floats . | |
operator const float * () const | |
See above. | |
FMQuaternion & | operator= (const float *v) |
Assign this FMQuaternion to the given float array. | |
float | LengthSquared () const |
Retrieves the squared length of the vector. | |
float | Length () const |
Retrieves the length of the vector. | |
void | NormalizeIt () |
Normalizes this vector. | |
FMQuaternion | Normalize () const |
Returns a quaternion with a unit length at the same space as this quaternion. | |
FMQuaternion | operator * (const FMQuaternion &q) const |
Returns the concatonation of this quaternion rotation and the given quaternion rotation. | |
FMVector3 | operator * (const FMVector3 &v) const |
Returns the concatonation of this quaternion rotation applied on the given vector. | |
FMQuaternion | operator~ () const |
Returns the conjugate of this quaternion. | |
FMQuaternion & | operator *= (const FMQuaternion &q) |
Applies quaternion multiplication of the given quaternion with this quaternion and returns the value. | |
FMQuaternion & | operator= (const FMQuaternion &q) |
Copy constructor. | |
FMQuaternion | slerp (const FMQuaternion &other, float time) const |
Returns the slerp of this quaternion to other at time time. | |
FMVector3 | ToEuler (FMVector3 *previousAngles=NULL) const |
Converts a quaternion to its Euler rotation angles. | |
void | ToAngleAxis (FMVector3 &axis, float &angle) const |
Converts a quaternion to a angle-axis rotation. | |
FMMatrix44 | ToMatrix () const |
Converts a quaternion to a transformation matrix. | |
void | SetToMatrix (FMMatrix44 &m) const |
Sets the Quaternions transform onto the specified matrix. | |
Static Public Member Functions | |
static FMQuaternion | EulerRotationQuaternion (float x, float y, float z) |
Get the FMQuaternion representation of the Euler rotation angles. | |
static FMQuaternion | MatrixRotationQuaternion (const FMMatrix44 &mat) |
Get the FMQuaternion that represents the FMMatrix44 rotation. | |
Public Attributes | |
float | x |
The i component. | |
float | y |
The j component. | |
float | z |
The k component. | |
float | w |
The scalar component. | |
Static Public Attributes | |
static const FMQuaternion | Zero |
The zero quaternion. | |
static const FMQuaternion | Identity |
The identity quaternion. |
Used to represent rotations: quaternions have the sole advantage of reduced floating-point error when concatenating rotations.
|
Creates an empty FMQuaternion. The default values are non deterministic. |
|
Creates the quaternion with the given component values.
|
|
Creates the quaternion with the given component values.
|
|
Creates the quaternion from a given axis and angle of rotation.
|
|
Get the FMQuaternion representation of the Euler rotation angles.
|
|
Retrieves the length of the vector.
|
|
Retrieves the squared length of the vector.
|
|
Get the FMQuaternion that represents the FMMatrix44 rotation.
|
|
Returns a quaternion with a unit length at the same space as this quaternion.
|
|
Returns the concatonation of this quaternion rotation applied on the given vector. This concatonation works great on vector but will give strange results for points.
|
|
Returns the concatonation of this quaternion rotation and the given quaternion rotation.
|
|
Applies quaternion multiplication of the given quaternion with this quaternion and returns the value.
|
|
Retrieves this quaternion as an array of
|
|
Copy constructor. Clones the given quaternion into this quaternion.
|
|
Assign this FMQuaternion to the given
Assigns each coordinate of this FMQuaternion to the elements in the
|
|
Returns the conjugate of this quaternion.
|
|
Sets the Quaternions transform onto the specified matrix. This will overwrite any existing rotations, but not positions
|
|
Returns the slerp of this quaternion to other at time time.
|
|
Converts a quaternion to a angle-axis rotation.
|
|
Converts a quaternion to its Euler rotation angles.
|
|
Converts a quaternion to a transformation matrix.
|
|
The identity quaternion. Transforming a vector or a point with this quaternion returns the same vector or point. |