EHS
ehs::Quat< T > Class Template Reference

#include <Quat.h>

Public Member Functions

 Quat ()
 
 Quat (const T w, const T x, const T y, const T z)
 
 Quat (const T yaw, const T pitch, const T roll)
 
 Quat (const Vec3< T > &euler)
 
 Quat (const Vec3< T > &n, const T a)
 
 Quat (const Mat4< T > &rotMatrix)
 
 Quat (const Quat &quat)
 
 Quat (const T scalar)
 
Quatoperator= (const Quat &quat)
 
Quatoperator= (const Mat4< T > &rotMatrix)
 
Quat operator+ (const Quat &other) const
 
Quat operator- () const
 
Quat operator- (const Quat &other) const
 
Quat operator* (const T scalar)
 
Quat operator* (const Quat &other)
 
Vec3< T > operator* (const Vec3< T > &vect)
 
Quat operator^ (const T t)
 
bool operator== (const Quat &quat) const
 
bool operator!= (const Quat &quat) const
 
operator[] (const UInt_64 index) const
 
T & operator[] (const UInt_64 index)
 
void ToAxisAngle (Vec3< T > *vectAxis, T *flAngle)
 
void ToQuaternion (const Mat4< T > &rotMatrix)
 
Mat4< T > ToMatrix () const
 
float GetMagnitude ()
 
Quat< T > GetNormalized ()
 
void Normalize ()
 
Dot (const Quat &other) const
 
Quat< T > GetConjugate ()
 
void Conjugate ()
 
Quat< T > GetInverse ()
 
void Inverse ()
 

Static Public Member Functions

static Quat< T > Slerp (Quat< T > start, Quat< T > finish, const T t)
 

Public Attributes

w
 
x
 
y
 
z
 

Constructor & Destructor Documentation

◆ Quat() [1/8]

template<typename T >
ehs::Quat< T >::Quat ( )
inline

◆ Quat() [2/8]

template<typename T >
ehs::Quat< T >::Quat ( const T  w,
const T  x,
const T  y,
const T  z 
)
inline

◆ Quat() [3/8]

template<typename T >
ehs::Quat< T >::Quat ( const T  yaw,
const T  pitch,
const T  roll 
)
inline

◆ Quat() [4/8]

template<typename T >
ehs::Quat< T >::Quat ( const Vec3< T > &  euler)
inlineexplicit

◆ Quat() [5/8]

template<typename T >
ehs::Quat< T >::Quat ( const Vec3< T > &  n,
const T  a 
)
inline

◆ Quat() [6/8]

template<typename T >
ehs::Quat< T >::Quat ( const Mat4< T > &  rotMatrix)
inlineexplicit

◆ Quat() [7/8]

template<typename T >
ehs::Quat< T >::Quat ( const Quat< T > &  quat)
inline

◆ Quat() [8/8]

template<typename T >
ehs::Quat< T >::Quat ( const T  scalar)
inlineexplicit

Member Function Documentation

◆ Conjugate()

template<typename T >
void ehs::Quat< T >::Conjugate ( )
inline

◆ Dot()

template<typename T >
T ehs::Quat< T >::Dot ( const Quat< T > &  other) const
inline

◆ GetConjugate()

template<typename T >
Quat< T > ehs::Quat< T >::GetConjugate ( )
inline

◆ GetInverse()

template<typename T >
Quat< T > ehs::Quat< T >::GetInverse ( )
inline

◆ GetMagnitude()

template<typename T >
float ehs::Quat< T >::GetMagnitude ( )
inline

◆ GetNormalized()

template<typename T >
Quat< T > ehs::Quat< T >::GetNormalized ( )
inline

◆ Inverse()

template<typename T >
void ehs::Quat< T >::Inverse ( )
inline

◆ Normalize()

template<typename T >
void ehs::Quat< T >::Normalize ( )
inline

◆ operator!=()

template<typename T >
bool ehs::Quat< T >::operator!= ( const Quat< T > &  quat) const
inline

◆ operator*() [1/3]

template<typename T >
Quat ehs::Quat< T >::operator* ( const Quat< T > &  other)
inline

◆ operator*() [2/3]

template<typename T >
Quat ehs::Quat< T >::operator* ( const T  scalar)
inline

◆ operator*() [3/3]

template<typename T >
Vec3< T > ehs::Quat< T >::operator* ( const Vec3< T > &  vect)
inline

◆ operator+()

template<typename T >
Quat ehs::Quat< T >::operator+ ( const Quat< T > &  other) const
inline

◆ operator-() [1/2]

template<typename T >
Quat ehs::Quat< T >::operator- ( ) const
inline

◆ operator-() [2/2]

template<typename T >
Quat ehs::Quat< T >::operator- ( const Quat< T > &  other) const
inline

◆ operator=() [1/2]

template<typename T >
Quat & ehs::Quat< T >::operator= ( const Mat4< T > &  rotMatrix)
inline

◆ operator=() [2/2]

template<typename T >
Quat & ehs::Quat< T >::operator= ( const Quat< T > &  quat)
inline

◆ operator==()

template<typename T >
bool ehs::Quat< T >::operator== ( const Quat< T > &  quat) const
inline

◆ operator[]() [1/2]

template<typename T >
T & ehs::Quat< T >::operator[] ( const UInt_64  index)
inline

◆ operator[]() [2/2]

template<typename T >
T ehs::Quat< T >::operator[] ( const UInt_64  index) const
inline

◆ operator^()

template<typename T >
Quat ehs::Quat< T >::operator^ ( const T  t)
inline

◆ Slerp()

template<typename T >
static Quat< T > ehs::Quat< T >::Slerp ( Quat< T >  start,
Quat< T >  finish,
const T  t 
)
inlinestatic

◆ ToAxisAngle()

template<typename T >
void ehs::Quat< T >::ToAxisAngle ( Vec3< T > *  vectAxis,
T *  flAngle 
)
inline

◆ ToMatrix()

template<typename T >
Mat4< T > ehs::Quat< T >::ToMatrix ( ) const
inline

◆ ToQuaternion()

template<typename T >
void ehs::Quat< T >::ToQuaternion ( const Mat4< T > &  rotMatrix)
inline

Member Data Documentation

◆ w

template<typename T >
T ehs::Quat< T >::w

◆ x

template<typename T >
T ehs::Quat< T >::x

◆ y

template<typename T >
T ehs::Quat< T >::y

◆ z

template<typename T >
T ehs::Quat< T >::z

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