#include <QuaternionT.hh>


Public Types | |
| typedef VectorT< Scalar, 4 > | Base |
| typedef QuaternionT< Scalar > | Quaternion |
| typedef VectorT< Scalar, 3 > | Vec3 |
| typedef VectorT< Scalar, 4 > | Vec4 |
| typedef Matrix4x4T< Scalar > | Matrix |
Public Member Functions | |
| QuaternionT (Scalar _w=1.0, Scalar _x=0.0, Scalar _y=0.0, Scalar _z=0.0) | |
| construct from 4 Scalars (default) | |
| QuaternionT (const Vec3 &_p) | |
| construct from 3D point (pure imaginary quaternion) | |
| QuaternionT (const Vec4 &_p) | |
| construct from 4D vector | |
| QuaternionT (Vec3 _axis, Scalar _angle) | |
| construct from rotation axis and angle (in radians) | |
| template<class MatrixT > | |
| QuaternionT (const MatrixT &_rot) | |
| construct from rotation matrix (only valid for rotation matrices!) | |
| void | identity () |
| identity rotation | |
| Quaternion | conjugate () const |
| conjugate quaternion | |
| Quaternion | invert () const |
| invert quaternion | |
| Quaternion | operator* (const Quaternion &_q) const |
| quaternion * quaternion | |
| Quaternion & | operator*= (const Quaternion &_q) |
| quaternion *= quaternion | |
| Vec3 | rotate (const Vec3 &_v) |
| rotate vector | |
| void | axis_angle (Vec3 &_axis, Scalar &_angle) const |
| get rotation axis and angle (only valid for unit quaternions!) | |
| Matrix | rotation_matrix () const |
| cast to rotation matrix | |
| Matrix | right_mult_matrix () const |
| get matrix for mult from right (Qr = q*r) | |
| Matrix | left_mult_matrix () const |
| get matrix for mult from left (lQ = l*q) | |
| template<class MatrixT > | |
| void | init_from_matrix (const MatrixT &_rot) |
| get quaternion from rotation matrix | |
| Quaternion | exponential () const |
| quaternion exponential (for unit quaternions) | |
| Quaternion | logarithm () const |
| quaternion logarithm (for unit quaternions) | |
Quaternion class for representing rotations.
Definition at line 74 of file QuaternionT.hh.