Quat< T > Class Template Reference
Detailed Description
template<typename T>
class cy::Quat< T >
class cy::Quat< T >
Quaternion class.
#include <cyQuat.h>
Public Member Functions | |
Constructors | |
| Quat (T _s, Vec3< T > const &_v) | |
| Quat (T _s, T _x, T _y, T _z) | |
| Quat (Quat const &q) | |
Set & Get value functions | |
| void | Zero () |
| Sets the scalar part to 1 and vector part to zero vector. | |
| void | Reset () |
| Sets the scalar part to 1 and vector part to zero vector. | |
| void | Set (T _s, Vec3< T > const &_v) |
| Sets the scalar part to 1 and vector part to zero vector. | |
| void | Set (T _s, T _x, T _y, T _z) |
| Sets the scalar part to 1 and vector part to zero vector. | |
| void | Set (T *array) |
| Sets the scalar part to 1 and vector part to zero vector. | |
| void | SetRotation (T angle, Vec3< T > const &axis) |
| Sets the scalar part to 1 and vector part to zero vector. | |
| void | SetRotation (T angle, T axisX, T axisY, T axisZ) |
| Sets the scalar part to 1 and vector part to zero vector. | |
| void | Get (T *array) |
| Sets the scalar part to 1 and vector part to zero vector. | |
| T | GetRotationAngle () |
| Returns rotation angle in radiants. | |
| Vec3< T > | GetRotationAxis () |
| Sets the scalar part to 1 and vector part to zero vector. | |
Length and Normalize functions | |
| void | Normalize () |
| Quat | GetNormalized () const |
| T | LengthSquared () const |
| T | Length () const |
Matrix conversion functions | |
| void | ToMatrix3 (Matrix3< T > &m) const |
| void | ToMatrix4 (Matrix4< T > &m) const |
| Matrix3< T > | ToMatrix3 () const |
| Matrix4< T > | ToMatrix4 () const |
Unary operators | |
| Quat | operator- () const |
Binary operators | |
| Quat | operator* (Quat const &q) const |
| Quat | operator+ (Quat const &q) const |
| Quat | operator- (Quat const &q) const |
| Quat | operator* (T const &f) const |
Assignment operators | |
| Quat & | operator*= (Quat const &q) |
| Quat & | operator+= (Quat const &q) |
| Quat & | operator-= (Quat const &q) |
| Quat & | operator*= (T const &f) |
Test operators | |
| int | operator== (Quat const &q) const |
| int | operator!= (Quat const &q) const |
Public Attributes | |
| T | s |
| scaler part | |
| Vec3< T > | v |
| vector part | |
Friends | |
| Quat | operator* (T f, Quat const &q) |
Vector rotations | |
Rotates the given vector using the quaternion. Note that the quaternion must be a unit quaternion. | |
| Vec3< T > | GetRotatedVector (Vec3< T > const &p) |
| void | RotateVector (Vec3< T > &p) |