Public Member Functions | Private Types | Private Attributes | List of all members
lvr2::Quaternion< BaseVecT > Class Template Reference

#include <Quaternion.hpp>

Public Member Functions

Quaternion< BaseVecT > copy ()
 
void fromAxis (BaseVecT axis, ValueType angle)
 
void fromAxis (ValueType *vec, ValueType angle)
 
void fromEuler (ValueType pitch, ValueType yaw, ValueType roll)
 
void getAxisAngle (BaseVecT *axis, ValueType *angle)
 
Quaternion< BaseVecT > getConjugate ()
 
Matrix4< BaseVecT > getMatrix ()
 
void getMatrix (ValueType *m)
 
void normalize ()
 
BaseVecT operator* (BaseVecT *vec)
 
BaseVecT operator* (BaseVecT vec)
 
Quaternion< BaseVecT > operator* (Quaternion< BaseVecT > rq)
 
void printDebugInfo ()
 
void printMatrix ()
 
 Quaternion ()
 
 Quaternion (BaseVecT vec, ValueType angle)
 
 Quaternion (const Quaternion< BaseVecT > &o)
 
 Quaternion (ValueType *vec, ValueType w)
 
 Quaternion (ValueType pitch, ValueType yaw, ValueType roll)
 
 Quaternion (ValueType x, ValueType y, ValueType z, ValueType w)
 
BaseVecT toEuler ()
 
ValueType W () const
 
ValueType X () const
 
ValueType Y () const
 
ValueType Z () const
 
 ~Quaternion ()
 

Private Types

using ValueType = typename BaseVecT::CoordType
 

Private Attributes

ValueType w
 
ValueType x
 
ValueType y
 
ValueType z
 

Detailed Description

template<typename BaseVecT>
class lvr2::Quaternion< BaseVecT >

Definition at line 64 of file Quaternion.hpp.

Member Typedef Documentation

◆ ValueType

template<typename BaseVecT >
using lvr2::Quaternion< BaseVecT >::ValueType = typename BaseVecT::CoordType
private

Definition at line 66 of file Quaternion.hpp.

Constructor & Destructor Documentation

◆ Quaternion() [1/6]

template<typename BaseVecT >
lvr2::Quaternion< BaseVecT >::Quaternion ( )

◆ Quaternion() [2/6]

template<typename BaseVecT >
lvr2::Quaternion< BaseVecT >::Quaternion ( const Quaternion< BaseVecT > &  o)
inline

Definition at line 70 of file Quaternion.hpp.

◆ Quaternion() [3/6]

template<typename BaseVecT >
lvr2::Quaternion< BaseVecT >::Quaternion ( BaseVecT  vec,
ValueType  angle 
)

◆ Quaternion() [4/6]

template<typename BaseVecT >
lvr2::Quaternion< BaseVecT >::Quaternion ( ValueType  pitch,
ValueType  yaw,
ValueType  roll 
)

◆ Quaternion() [5/6]

template<typename BaseVecT >
lvr2::Quaternion< BaseVecT >::Quaternion ( ValueType  x,
ValueType  y,
ValueType  z,
ValueType  w 
)

◆ Quaternion() [6/6]

template<typename BaseVecT >
lvr2::Quaternion< BaseVecT >::Quaternion ( ValueType vec,
ValueType  w 
)

◆ ~Quaternion()

template<typename BaseVecT >
lvr2::Quaternion< BaseVecT >::~Quaternion ( )

Member Function Documentation

◆ copy()

template<typename BaseVecT >
Quaternion<BaseVecT> lvr2::Quaternion< BaseVecT >::copy ( )

◆ fromAxis() [1/2]

template<typename BaseVecT >
void lvr2::Quaternion< BaseVecT >::fromAxis ( BaseVecT  axis,
ValueType  angle 
)

◆ fromAxis() [2/2]

template<typename BaseVecT >
void lvr2::Quaternion< BaseVecT >::fromAxis ( ValueType vec,
ValueType  angle 
)

◆ fromEuler()

template<typename BaseVecT >
void lvr2::Quaternion< BaseVecT >::fromEuler ( ValueType  pitch,
ValueType  yaw,
ValueType  roll 
)

◆ getAxisAngle()

template<typename BaseVecT >
void lvr2::Quaternion< BaseVecT >::getAxisAngle ( BaseVecT *  axis,
ValueType angle 
)

◆ getConjugate()

template<typename BaseVecT >
Quaternion<BaseVecT> lvr2::Quaternion< BaseVecT >::getConjugate ( )

◆ getMatrix() [1/2]

template<typename BaseVecT >
Matrix4<BaseVecT> lvr2::Quaternion< BaseVecT >::getMatrix ( )

◆ getMatrix() [2/2]

template<typename BaseVecT >
void lvr2::Quaternion< BaseVecT >::getMatrix ( ValueType m)

◆ normalize()

template<typename BaseVecT >
void lvr2::Quaternion< BaseVecT >::normalize ( )

◆ operator*() [1/3]

template<typename BaseVecT >
BaseVecT lvr2::Quaternion< BaseVecT >::operator* ( BaseVecT *  vec)

◆ operator*() [2/3]

template<typename BaseVecT >
BaseVecT lvr2::Quaternion< BaseVecT >::operator* ( BaseVecT  vec)

◆ operator*() [3/3]

template<typename BaseVecT >
Quaternion<BaseVecT> lvr2::Quaternion< BaseVecT >::operator* ( Quaternion< BaseVecT >  rq)

◆ printDebugInfo()

template<typename BaseVecT >
void lvr2::Quaternion< BaseVecT >::printDebugInfo ( )

◆ printMatrix()

template<typename BaseVecT >
void lvr2::Quaternion< BaseVecT >::printMatrix ( )

◆ toEuler()

template<typename BaseVecT >
BaseVecT lvr2::Quaternion< BaseVecT >::toEuler ( )

◆ W()

template<typename BaseVecT >
ValueType lvr2::Quaternion< BaseVecT >::W ( ) const
inline

Definition at line 94 of file Quaternion.hpp.

◆ X()

template<typename BaseVecT >
ValueType lvr2::Quaternion< BaseVecT >::X ( ) const
inline

Definition at line 91 of file Quaternion.hpp.

◆ Y()

template<typename BaseVecT >
ValueType lvr2::Quaternion< BaseVecT >::Y ( ) const
inline

Definition at line 92 of file Quaternion.hpp.

◆ Z()

template<typename BaseVecT >
ValueType lvr2::Quaternion< BaseVecT >::Z ( ) const
inline

Definition at line 93 of file Quaternion.hpp.

Member Data Documentation

◆ w

template<typename BaseVecT >
ValueType lvr2::Quaternion< BaseVecT >::w
private

Definition at line 107 of file Quaternion.hpp.

◆ x

template<typename BaseVecT >
ValueType lvr2::Quaternion< BaseVecT >::x
private

Definition at line 107 of file Quaternion.hpp.

◆ y

template<typename BaseVecT >
ValueType lvr2::Quaternion< BaseVecT >::y
private

Definition at line 107 of file Quaternion.hpp.

◆ z

template<typename BaseVecT >
ValueType lvr2::Quaternion< BaseVecT >::z
private

Definition at line 107 of file Quaternion.hpp.


The documentation for this class was generated from the following file:


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Wed Mar 2 2022 00:37:27