A float based Quaterinion class. More...
#include <Quatd.h>
Public Member Functions | |
Quatd (const Vec3d &imaginary, double double=1.0) | |
Construct quaternion from vector and scalar. | |
Quatd (double x, double y, double z, double _qw) | |
Construct quaternion from four scalars. | |
Quatd (const Vec4d &v) | |
Construct quaternion from a 4D vector. | |
Mat3x3d | get_Mat3x3d () const |
Get a 3x3 rotation matrix from a quaternion. | |
Mat4x4d | get_Mat4x4d () const |
Get a 4x4 rotation matrix from a quaternion. | |
Quatd | identity_Quatd () |
Create an identity quaternion. | |
![]() | |
ArithQuat () | |
Construct undefined quaternion. | |
ArithQuat (const Vec3d &imaginary, doublereal=1.0f) | |
Construct quaternion from vector and scalar. | |
ArithQuat (doublex, doubley, doublez, double_qw) | |
Construct quaternion from four scalars. | |
void | set (const Vec3d &imaginary, doublereal=1.0f) |
Assign values to a quaternion. | |
void | set (doublex, doubley, doublez, double_qw) |
void | get (double &x, double &y, double &z, double &_qw) const |
Get values from a quaternion. | |
Vec3d | get_imaginary_part () const |
Get imaginary part of a quaternion. | |
double | get_real_part () const |
Get real part of a quaternion. | |
void | get_rot (double &angle, Vec3d &v) |
Obtain angle of rotation and axis. | |
void | make_rot (doubleangle, const Vec3d &v) |
Construct a Quaternion from an angle and axis of rotation. | |
void | make_rot (const Vec3d &s, const Vec3d &t) |
void | make_rot (ArithSqMatFloat< VT, MT, ROWS > &m) |
Construct a Quaternion from a rotation matrix. | |
bool | operator== (const ArithQuat< double, Vec3d, Quatd > &q) const |
bool | operator!= (const ArithQuat< double, Vec3d, Quatd > &q) const |
Quatd | operator* (const ArithQuat< double, Vec3d, Quatd > &q) const |
Multiply two quaternions. (Combine their rotation) | |
Quatd | operator* (doublescalar) const |
Multiply scalar onto quaternion. | |
Quatd | operator+ (const ArithQuat< double, Vec3d, Quatd > &q) const |
Add two quaternions. | |
Quatd | operator- () const |
Compute the additive inverse of the quaternion. | |
double | norm () const |
Compute norm of quaternion. | |
Quatd | conjugate () const |
Return conjugate quaternion. | |
Quatd | inverse () const |
Compute the multiplicative inverse of the quaternion. | |
Quatd | normalize () |
Normalize quaternion. | |
Vec3d | apply (const Vec3d &vec) const |
Rotate vector according to quaternion. | |
Vec3d | apply_unit (const Vec3d &vec) const |
Rotate vector according to unit quaternion. | |
Additional Inherited Members | |
![]() | |
Vec3d | qv |
Vector part of quaternion. | |
double | qw |
Scalar part of quaternion. | |
A float based Quaterinion class.
Quaternions are algebraic entities useful for rotation.