Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions
_Quaternion< Base > Struct Template Reference

#include <quaternion.h>

Inheritance diagram for _Quaternion< Base >:
Inheritance graph
[legend]

List of all members.

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, Baseangles () const
_Vector< 3, Baseangles () const
_Quaternion< Baseinverse () const
_Quaternion< Baseinverse () const
_Quaternion< Base > & normalize ()
_Quaternion< Base > & normalize ()
_Quaternion< Basenormalized () const
_Quaternion< Basenormalized () const
_Quaternion< Baseoperator* (const _Quaternion &q) const
_Quaternion< Baseoperator* (const _Quaternion &q) const
_Vector< 3, Baseoperator* (const _Vector< 3, Base > &v) const
_Vector< 3, Baseoperator* (const _Vector< 3, Base > &v) const
_Quaternion< Base > & operator*= (const _Quaternion &q)
_Quaternion< Base > & operator*= (const _Quaternion &q)
_RotationMatrix3< BaserotationMatrix () const
_RotationMatrix3< BaserotationMatrix () const

Static Public Member Functions

static _Quaternion< Baseslerp (const _Quaternion< Base > &from, const _Quaternion< Base > &to, Base lambda)
static _Quaternion< Baseslerp (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)

Detailed Description

template<typename Base = double>
struct _Quaternion< Base >

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.


Constructor & Destructor Documentation

template<typename Base >
_Quaternion< Base >::_Quaternion ( )

Definition at line 21 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base>
_Quaternion< Base >::_Quaternion ( Base  x,
Base  y,
Base  z,
Base  w 
)

Definition at line 29 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base>
_Quaternion< Base >::_Quaternion ( const _RotationMatrix3< Base > &  m)

Definition at line 33 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base>
_Quaternion< Base >::_Quaternion ( const _Vector< 3, Base > &  vec)

Definition at line 42 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base>
_Quaternion< Base >::_Quaternion ( Base  roll,
Base  pitch,
Base  yaw 
)

Definition at line 47 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base >
template<typename Base2 >
_Quaternion< Base >::_Quaternion ( const _Quaternion< Base2 > &  other)

Definition at line 171 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base>
_Quaternion< Base >::_Quaternion ( const _Vector< 4, Base > &  v) [protected]

Definition at line 25 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base = double>
_Quaternion< Base >::_Quaternion ( )
template<typename Base = double>
_Quaternion< Base >::_Quaternion ( Base  x,
Base  y,
Base  z,
Base  w 
)
template<typename Base = double>
_Quaternion< Base >::_Quaternion ( const _RotationMatrix3< Base > &  m)
template<typename Base = double>
_Quaternion< Base >::_Quaternion ( const _Vector< 3, Base > &  vec)
template<typename Base = double>
_Quaternion< Base >::_Quaternion ( Base  roll,
Base  pitch,
Base  yaw 
)
template<typename Base = double>
template<typename Base2 >
_Quaternion< Base >::_Quaternion ( const _Quaternion< Base2 > &  other)
template<typename Base = double>
_Quaternion< Base >::_Quaternion ( const _Vector< 4, Base > &  v) [protected]

Member Function Documentation

template<typename Base >
Base _Quaternion< Base >::angle ( ) const [inline]

Definition at line 133 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base = double>
Base _Quaternion< Base >::angle ( ) const
template<typename Base >
_Vector< 3, Base > _Quaternion< Base >::angles ( ) const [inline]

Definition at line 107 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base = double>
_Vector<3, Base> _Quaternion< Base >::angles ( ) const [inline]
template<typename Base >
_Quaternion< Base > _Quaternion< Base >::inverse ( ) const [inline]

Definition at line 52 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base = double>
_Quaternion<Base> _Quaternion< Base >::inverse ( ) const [inline]
template<typename Base >
_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.

template<typename Base = double>
_Quaternion<Base>& _Quaternion< Base >::normalize ( )

scales the vector to have norm 1.

Reimplemented from _Vector< 4, Base >.

template<typename Base = double>
_Quaternion<Base> _Quaternion< Base >::normalized ( ) const

returns the normalized vector.

Reimplemented from _Vector< 4, Base >.

template<typename 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.

template<typename Base >
_Quaternion< Base > _Quaternion< Base >::operator* ( const _Quaternion< Base > &  q) const [inline]

Definition at line 88 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base = double>
_Quaternion<Base> _Quaternion< Base >::operator* ( const _Quaternion< Base > &  q) const
template<typename Base = double>
_Vector<3, Base> _Quaternion< Base >::operator* ( const _Vector< 3, Base > &  v) const
template<typename Base>
_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.

template<typename Base >
_Quaternion< Base > & _Quaternion< Base >::operator*= ( const _Quaternion< Base > &  q) [inline]

Definition at line 99 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base = double>
_Quaternion<Base>& _Quaternion< Base >::operator*= ( const _Quaternion< Base > &  q)
template<typename Base = double>
_RotationMatrix3<Base> _Quaternion< Base >::rotationMatrix ( ) const
template<typename Base >
_RotationMatrix3< Base > _Quaternion< Base >::rotationMatrix ( ) const

Definition at line 113 of file include/hogman_minimal/math/quaternion.hpp.

template<typename Base = double>
static _Quaternion<Base> _Quaternion< Base >::slerp ( const _Quaternion< Base > &  from,
const _Quaternion< Base > &  to,
Base  lambda 
) [inline, static]
template<typename Base>
_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.


Member Data Documentation

template<typename Base = double>
static const int _Quaternion< Base >::Angles = 3 [static]

Definition at line 37 of file include/hogman_minimal/math/quaternion.h.

template<typename Base = double>
static const int _Quaternion< Base >::Dimension = 3 [static]

Definition at line 38 of file include/hogman_minimal/math/quaternion.h.


The documentation for this struct was generated from the following files:


hogman_minimal
Author(s): Maintained by Juergen Sturm
autogenerated on Mon Oct 6 2014 00:07:00