#include <mrpt/math/CQuaternion.h>
Public Member Functions | |
CQuaternion () | |
Default constructor: construct a (0,0,0,0) quaternion representing no rotation. | |
CQuaternion (const T &r, const T &x, const T &y, const T &z) | |
Construct a quaternion from its parameters 'r', 'x', 'y', 'z', with q = r + ix + jy + kz. | |
CQuaternion (const CQuaternion &qin) | |
Construct a quaternion as copy of an input quaternion. | |
CQuaternion (const CVectorTemplate< T > &in) | |
Construct a quaternion from a 3D input vector (Rodrigues rotation 3-vector). | |
T | r () const |
Return r coordinate of the quaternion. | |
T | x () const |
Return x coordinate of the quaternion. | |
T | y () const |
Return y coordinate of the quaternion. | |
T | z () const |
Return z coordinate of the quaternion. | |
void | r (const T &r) |
Set r coordinate of the quaternion. | |
void | x (const T &x) |
Set x coordinate of the quaternion. | |
void | y (const T &y) |
Set y coordinate of the quaternion. | |
void | z (const T &z) |
Set z coordinate of the quaternion. | |
void | q_conv (const CVectorTemplate< T > &in) |
Set this quaternion to the rotation described by a 3D Rodrigues rotation vector. | |
void | q_prod (const CQuaternion &qin1, const CQuaternion &qin2) |
Calculate the cross product of two quaternion, this = qin1 x qin2 The result is an other quaternion. | |
void | q_normalise () |
Normalised quaternion. | |
void | q_normJac (CMatrixTemplateNumeric< T > &J) const |
Calculate the normalized 4x4 Jacobian of a quaternion. | |
void | q_rotation_matrix (CMatrixTemplateNumeric< T > &M) const |
Calculate the 3x3 rotation matrix associated to this quaternion. | |
CQuaternion | q_conj () const |
Return the conjugate quaternion. | |
void | rpy (T &r, T &p, T &y) const |
Return the roll, pitch and yaw angle associated to quaternion. | |
CQuaternion | operator* (const T &factor) |
This quaternion class represents a 3D rotation as a complex vector with 3 imaginary parts x, y, z and 1 real part r. Where q = r + ix + jy + kz.
For more information about quaternions, see:
Definition at line 48 of file CQuaternion.h.
mrpt::math::CQuaternion< T >::CQuaternion | ( | ) | [inline] |
Default constructor: construct a (0,0,0,0) quaternion representing no rotation.
Definition at line 57 of file CQuaternion.h.
mrpt::math::CQuaternion< T >::CQuaternion | ( | const T & | r, | |
const T & | x, | |||
const T & | y, | |||
const T & | z | |||
) | [inline] |
Construct a quaternion from its parameters 'r', 'x', 'y', 'z', with q = r + ix + jy + kz.
Definition at line 62 of file CQuaternion.h.
mrpt::math::CQuaternion< T >::CQuaternion | ( | const CQuaternion< T > & | qin | ) | [inline] |
mrpt::math::CQuaternion< T >::CQuaternion | ( | const CVectorTemplate< T > & | in | ) | [inline] |
Construct a quaternion from a 3D input vector (Rodrigues rotation 3-vector).
Definition at line 77 of file CQuaternion.h.
References THROW_EXCEPTION, mrpt::math::CQuaternion< T >::x(), mrpt::math::CQuaternion< T >::y(), and mrpt::math::CQuaternion< T >::z().
CQuaternion mrpt::math::CQuaternion< T >::operator* | ( | const T & | factor | ) | [inline] |
Definition at line 231 of file CQuaternion.h.
CQuaternion mrpt::math::CQuaternion< T >::q_conj | ( | ) | const [inline] |
void mrpt::math::CQuaternion< T >::q_conv | ( | const CVectorTemplate< T > & | in | ) | [inline] |
Set this quaternion to the rotation described by a 3D Rodrigues rotation vector.
Definition at line 119 of file CQuaternion.h.
References ASSERT_, mrpt::math::CQuaternion< T >::x(), mrpt::math::CQuaternion< T >::y(), and mrpt::math::CQuaternion< T >::z().
void mrpt::math::CQuaternion< T >::q_normalise | ( | ) | [inline] |
Normalised quaternion.
Definition at line 161 of file CQuaternion.h.
References mrpt::utils::square().
Referenced by mrpt::math::CQuaternion< T >::q_prod().
void mrpt::math::CQuaternion< T >::q_normJac | ( | CMatrixTemplateNumeric< T > & | J | ) | const [inline] |
Calculate the normalized 4x4 Jacobian of a quaternion.
Definition at line 171 of file CQuaternion.h.
References mrpt::math::CMatrixTemplateNumeric< T >::setSize().
void mrpt::math::CQuaternion< T >::q_prod | ( | const CQuaternion< T > & | qin1, | |
const CQuaternion< T > & | qin2 | |||
) | [inline] |
Calculate the cross product of two quaternion, this = qin1 x qin2 The result is an other quaternion.
Definition at line 137 of file CQuaternion.h.
References mrpt::math::CQuaternion< T >::q_normalise(), mrpt::math::CQuaternion< T >::r(), mrpt::math::CQuaternion< T >::x(), mrpt::math::CQuaternion< T >::y(), and mrpt::math::CQuaternion< T >::z().
void mrpt::math::CQuaternion< T >::q_rotation_matrix | ( | CMatrixTemplateNumeric< T > & | M | ) | const [inline] |
Calculate the 3x3 rotation matrix associated to this quaternion.
Definition at line 190 of file CQuaternion.h.
References mrpt::math::CMatrixTemplateNumeric< T >::setSize().
void mrpt::math::CQuaternion< T >::r | ( | const T & | r | ) | [inline] |
T mrpt::math::CQuaternion< T >::r | ( | ) | const [inline] |
Return r coordinate of the quaternion.
Definition at line 108 of file CQuaternion.h.
Referenced by mrpt::math::CQuaternion< T >::q_prod().
void mrpt::math::CQuaternion< T >::rpy | ( | T & | r, | |
T & | p, | |||
T & | y | |||
) | const [inline] |
Return the roll, pitch and yaw angle associated to quaternion.
Definition at line 218 of file CQuaternion.h.
void mrpt::math::CQuaternion< T >::x | ( | const T & | x | ) | [inline] |
T mrpt::math::CQuaternion< T >::x | ( | ) | const [inline] |
Return x coordinate of the quaternion.
Definition at line 109 of file CQuaternion.h.
Referenced by mrpt::math::CQuaternion< T >::CQuaternion(), mrpt::math::CQuaternion< T >::q_conv(), and mrpt::math::CQuaternion< T >::q_prod().
void mrpt::math::CQuaternion< T >::y | ( | const T & | y | ) | [inline] |
T mrpt::math::CQuaternion< T >::y | ( | ) | const [inline] |
Return y coordinate of the quaternion.
Definition at line 110 of file CQuaternion.h.
Referenced by mrpt::math::CQuaternion< T >::CQuaternion(), mrpt::math::CQuaternion< T >::q_conv(), and mrpt::math::CQuaternion< T >::q_prod().
void mrpt::math::CQuaternion< T >::z | ( | const T & | z | ) | [inline] |
T mrpt::math::CQuaternion< T >::z | ( | ) | const [inline] |
Return z coordinate of the quaternion.
Definition at line 111 of file CQuaternion.h.
Referenced by mrpt::math::CQuaternion< T >::CQuaternion(), mrpt::math::CQuaternion< T >::q_conv(), and mrpt::math::CQuaternion< T >::q_prod().
Page generated by Doxygen 1.5.7.1 for MRPT 0.7.1 SVN: at Mon Aug 17 23:10:56 EDT 2009 |