#include <quaternion.h>
Public Member Functions | |
_Quaternion () | |
_Quaternion () | |
_Quaternion (Base x, Base y, Base z, Base w) | |
_Quaternion (Base x, Base y, Base z, Base w) | |
_Quaternion (const _RotationMatrix3< Base > &m) | |
_Quaternion (const _RotationMatrix3< Base > &m) | |
_Quaternion (const _Vector< 3, Base > &vec) | |
_Quaternion (const _Vector< 3, Base > &vec) | |
_Quaternion (Base roll, Base pitch, Base yaw) | |
_Quaternion (Base roll, Base pitch, Base yaw) | |
template<typename Base2 > | |
_Quaternion (const _Quaternion< Base2 > &other) | |
template<typename Base2 > | |
_Quaternion (const _Quaternion< Base2 > &other) | |
Base | angle () const |
Base | angle () const |
_Vector< 3, Base > | angles () const |
_Vector< 3, Base > | angles () const |
_Quaternion< Base > | inverse () const |
_Quaternion< Base > | inverse () const |
_Quaternion< Base > & | normalize () |
_Quaternion< Base > & | normalize () |
_Quaternion< Base > | normalized () const |
_Quaternion< Base > | normalized () const |
_Quaternion< Base > | operator* (const _Quaternion &q) const |
_Quaternion< Base > | operator* (const _Quaternion &q) const |
_Vector< 3, Base > | operator* (const _Vector< 3, Base > &v) const |
_Vector< 3, Base > | operator* (const _Vector< 3, Base > &v) const |
_Quaternion< Base > & | operator*= (const _Quaternion &q) |
_Quaternion< Base > & | operator*= (const _Quaternion &q) |
_RotationMatrix3< Base > | rotationMatrix () const |
_RotationMatrix3< Base > | rotationMatrix () const |
Static Public Member Functions | |
static _Quaternion< Base > | slerp (const _Quaternion< Base > &from, const _Quaternion< Base > &to, Base lambda) |
static _Quaternion< Base > | slerp (const _Quaternion< Base > &from, const _Quaternion< Base > &to, Base lambda) |
Static Public Attributes | |
static const int | Angles = 3 |
static const int | Dimension = 3 |
Protected Member Functions | |
_Quaternion (const _Vector< 4, Base > &v) | |
_Quaternion (const _Vector< 4, Base > &v) |
Rotation as the rotation axis whose lenght is proportional to the entity of the rotation. There is also a small algebra for UNIT quaternions. the function names are pretty self-explanatory.
Definition at line 35 of file include/hogman_minimal/math/quaternion.h.
_Quaternion< Base >::_Quaternion | ( | ) |
Definition at line 21 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion< Base >::_Quaternion | ( | Base | x, |
Base | y, | ||
Base | z, | ||
Base | w | ||
) |
Definition at line 29 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion< Base >::_Quaternion | ( | const _RotationMatrix3< Base > & | m | ) |
Definition at line 33 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion< Base >::_Quaternion | ( | const _Vector< 3, Base > & | vec | ) |
Definition at line 42 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion< Base >::_Quaternion | ( | Base | roll, |
Base | pitch, | ||
Base | yaw | ||
) |
Definition at line 47 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion< Base >::_Quaternion | ( | const _Quaternion< Base2 > & | other | ) |
Definition at line 171 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion< Base >::_Quaternion | ( | const _Vector< 4, Base > & | v | ) | [protected] |
Definition at line 25 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion< Base >::_Quaternion | ( | ) |
_Quaternion< Base >::_Quaternion | ( | Base | x, |
Base | y, | ||
Base | z, | ||
Base | w | ||
) |
_Quaternion< Base >::_Quaternion | ( | const _RotationMatrix3< Base > & | m | ) |
_Quaternion< Base >::_Quaternion | ( | const _Vector< 3, Base > & | vec | ) |
_Quaternion< Base >::_Quaternion | ( | Base | roll, |
Base | pitch, | ||
Base | yaw | ||
) |
_Quaternion< Base >::_Quaternion | ( | const _Quaternion< Base2 > & | other | ) |
_Quaternion< Base >::_Quaternion | ( | const _Vector< 4, Base > & | v | ) | [protected] |
Base _Quaternion< Base >::angle | ( | ) | const [inline] |
Definition at line 133 of file include/hogman_minimal/math/quaternion.hpp.
Base _Quaternion< Base >::angle | ( | ) | const |
_Vector< 3, Base > _Quaternion< Base >::angles | ( | ) | const [inline] |
Definition at line 107 of file include/hogman_minimal/math/quaternion.hpp.
_Vector<3, Base> _Quaternion< Base >::angles | ( | ) | const [inline] |
_Quaternion< Base > _Quaternion< Base >::inverse | ( | ) | const [inline] |
Definition at line 52 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion<Base> _Quaternion< Base >::inverse | ( | ) | const [inline] |
_Quaternion< Base > & _Quaternion< Base >::normalize | ( | ) | [inline] |
scales the vector to have norm 1.
Reimplemented from _Vector< 4, Base >.
Definition at line 57 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion<Base>& _Quaternion< Base >::normalize | ( | ) |
scales the vector to have norm 1.
Reimplemented from _Vector< 4, Base >.
_Quaternion<Base> _Quaternion< Base >::normalized | ( | ) | const |
returns the normalized vector.
Reimplemented from _Vector< 4, Base >.
_Quaternion< Base > _Quaternion< Base >::normalized | ( | ) | const [inline] |
returns the normalized vector.
Reimplemented from _Vector< 4, Base >.
Definition at line 68 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion< Base > _Quaternion< Base >::operator* | ( | const _Quaternion< Base > & | q | ) | const [inline] |
Definition at line 88 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion<Base> _Quaternion< Base >::operator* | ( | const _Quaternion< Base > & | q | ) | const |
_Vector<3, Base> _Quaternion< Base >::operator* | ( | const _Vector< 3, Base > & | v | ) | const |
_Vector< 3, Base > _Quaternion< Base >::operator* | ( | const _Vector< 3, Base > & | v | ) | const [inline] |
Definition at line 75 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion< Base > & _Quaternion< Base >::operator*= | ( | const _Quaternion< Base > & | q | ) | [inline] |
Definition at line 99 of file include/hogman_minimal/math/quaternion.hpp.
_Quaternion<Base>& _Quaternion< Base >::operator*= | ( | const _Quaternion< Base > & | q | ) |
_RotationMatrix3<Base> _Quaternion< Base >::rotationMatrix | ( | ) | const |
_RotationMatrix3< Base > _Quaternion< Base >::rotationMatrix | ( | ) | const |
Definition at line 113 of file include/hogman_minimal/math/quaternion.hpp.
static _Quaternion<Base> _Quaternion< Base >::slerp | ( | const _Quaternion< Base > & | from, |
const _Quaternion< Base > & | to, | ||
Base | lambda | ||
) | [inline, static] |
_Quaternion< Base > _Quaternion< Base >::slerp | ( | const _Quaternion< Base > & | from, |
const _Quaternion< Base > & | to, | ||
Base | lambda | ||
) | [inline, static] |
Definition at line 140 of file include/hogman_minimal/math/quaternion.hpp.
static const int _Quaternion< Base >::Angles = 3 [static] |
Definition at line 37 of file include/hogman_minimal/math/quaternion.h.
static const int _Quaternion< Base >::Dimension = 3 [static] |
Definition at line 38 of file include/hogman_minimal/math/quaternion.h.