VolVis::Quaternion< NUMBER > Class Template Reference

#include <TransformationMatrix.h>

List of all members.

Public Types

typedef Quaternion< NUMBER > This

Public Member Functions

 Quaternion ()
 Quaternion (const This &q)
 Quaternion (const NUMBER _w, const NUMBER _x, const NUMBER _y, const NUMBER _z)
 Quaternion (const Matrix4< NUMBER > &m)
 Quaternion (const Vector3< NUMBER > a, const NUMBER theta)
 Quaternion (const NUMBER alpha, const NUMBER beta, const NUMBER gamma)
Thisoperator= (const This &q)
Thisoperator= (const Matrix4< NUMBER > &m)
void one ()
void zero ()
Thisset (const NUMBER _w, const NUMBER _x, const NUMBER _y, const NUMBER _z)
void getAxis (NUMBER &ax, NUMBER &ay, NUMBER &az, NUMBER &theta)
void getAxis (Vector3< NUMBER > &a, NUMBER &theta)
void getEuler (NUMBER &alpha, NUMBER &beta, NUMBER &gamma) const
void getViewAxis (NUMBER &ax, NUMBER &ay, NUMBER &az) const
Vector3< NUMBER > getViewAxis () const
void getUpAxis (NUMBER &ax, NUMBER &ay, NUMBER &az) const
Vector3< NUMBER > getUpAxis () const
void getRightAxis (NUMBER &ax, NUMBER &ay, NUMBER &az) const
Vector3< NUMBER > getRightAxis () const
NUMBER getSquareLength () const
NUMBER getLength () const
Thisconjugate ()
Thisinvert ()
Thisnormalise ()
Vector3< NUMBER > rotate (const Vector3< NUMBER > &v)
Vector3< NUMBER > rotate (const NUMBER x, const NUMBER y, const NUMBER z)
Vector3< NUMBER > rotateInverse (const Vector3< NUMBER > &v)
Vector3< NUMBER > rotateInverse (const NUMBER x, const NUMBER y, const NUMBER z)
This operator * (const This &q)
Thisoperator *= (const This &q)
This operator * (const Vector3< NUMBER > &v)
Thisoperator *= (const Vector3< NUMBER > &v)
This operator * (const NUMBER s)
Thisoperator *= (const NUMBER s)
This operator/ (const NUMBER s)
Thisoperator/= (const NUMBER s)
This operator~ ()

Static Public Member Functions

static This fromAxis (const NUMBER ax, const NUMBER ay, const NUMBER az, const NUMBER theta)

Protected Attributes

NUMBER w
NUMBER x
NUMBER y
NUMBER z

template<class NUMBER>
class VolVis::Quaternion< NUMBER >


Member Typedef Documentation

template<class NUMBER>
typedef Quaternion<NUMBER> VolVis::Quaternion< NUMBER >::This


Constructor & Destructor Documentation

template<class NUMBER>
VolVis::Quaternion< NUMBER >::Quaternion (  )  [inline]

template<class NUMBER>
VolVis::Quaternion< NUMBER >::Quaternion ( const This q  )  [inline]

template<class NUMBER>
VolVis::Quaternion< NUMBER >::Quaternion ( const NUMBER  _w,
const NUMBER  _x,
const NUMBER  _y,
const NUMBER  _z 
) [inline]

template<class NUMBER>
VolVis::Quaternion< NUMBER >::Quaternion ( const Matrix4< NUMBER > &  m  )  [inline]

template<class NUMBER>
VolVis::Quaternion< NUMBER >::Quaternion ( const Vector3< NUMBER >  a,
const NUMBER  theta 
) [inline]

template<class NUMBER>
VolVis::Quaternion< NUMBER >::Quaternion ( const NUMBER  alpha,
const NUMBER  beta,
const NUMBER  gamma 
) [inline]


Member Function Documentation

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::operator= ( const This q  )  [inline]

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::operator= ( const Matrix4< NUMBER > &  m  )  [inline]

template<class NUMBER>
void VolVis::Quaternion< NUMBER >::one (  )  [inline]

template<class NUMBER>
void VolVis::Quaternion< NUMBER >::zero (  )  [inline]

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::set ( const NUMBER  _w,
const NUMBER  _x,
const NUMBER  _y,
const NUMBER  _z 
) [inline]

template<class NUMBER>
static This VolVis::Quaternion< NUMBER >::fromAxis ( const NUMBER  ax,
const NUMBER  ay,
const NUMBER  az,
const NUMBER  theta 
) [inline, static]

template<class NUMBER>
void VolVis::Quaternion< NUMBER >::getAxis ( NUMBER &  ax,
NUMBER &  ay,
NUMBER &  az,
NUMBER &  theta 
) [inline]

template<class NUMBER>
void VolVis::Quaternion< NUMBER >::getAxis ( Vector3< NUMBER > &  a,
NUMBER &  theta 
) [inline]

template<class NUMBER>
void VolVis::Quaternion< NUMBER >::getEuler ( NUMBER &  alpha,
NUMBER &  beta,
NUMBER &  gamma 
) const [inline]

template<class NUMBER>
void VolVis::Quaternion< NUMBER >::getViewAxis ( NUMBER &  ax,
NUMBER &  ay,
NUMBER &  az 
) const [inline]

template<class NUMBER>
Vector3<NUMBER> VolVis::Quaternion< NUMBER >::getViewAxis (  )  const [inline]

template<class NUMBER>
void VolVis::Quaternion< NUMBER >::getUpAxis ( NUMBER &  ax,
NUMBER &  ay,
NUMBER &  az 
) const [inline]

template<class NUMBER>
Vector3<NUMBER> VolVis::Quaternion< NUMBER >::getUpAxis (  )  const [inline]

template<class NUMBER>
void VolVis::Quaternion< NUMBER >::getRightAxis ( NUMBER &  ax,
NUMBER &  ay,
NUMBER &  az 
) const [inline]

template<class NUMBER>
Vector3<NUMBER> VolVis::Quaternion< NUMBER >::getRightAxis (  )  const [inline]

template<class NUMBER>
NUMBER VolVis::Quaternion< NUMBER >::getSquareLength (  )  const [inline]

template<class NUMBER>
NUMBER VolVis::Quaternion< NUMBER >::getLength (  )  const [inline]

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::conjugate (  )  [inline]

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::invert (  )  [inline]

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::normalise (  )  [inline]

template<class NUMBER>
Vector3<NUMBER> VolVis::Quaternion< NUMBER >::rotate ( const Vector3< NUMBER > &  v  )  [inline]

template<class NUMBER>
Vector3<NUMBER> VolVis::Quaternion< NUMBER >::rotate ( const NUMBER  x,
const NUMBER  y,
const NUMBER  z 
) [inline]

template<class NUMBER>
Vector3<NUMBER> VolVis::Quaternion< NUMBER >::rotateInverse ( const Vector3< NUMBER > &  v  )  [inline]

template<class NUMBER>
Vector3<NUMBER> VolVis::Quaternion< NUMBER >::rotateInverse ( const NUMBER  x,
const NUMBER  y,
const NUMBER  z 
) [inline]

template<class NUMBER>
This VolVis::Quaternion< NUMBER >::operator * ( const This q  )  [inline]

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::operator *= ( const This q  )  [inline]

template<class NUMBER>
This VolVis::Quaternion< NUMBER >::operator * ( const Vector3< NUMBER > &  v  )  [inline]

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::operator *= ( const Vector3< NUMBER > &  v  )  [inline]

template<class NUMBER>
This VolVis::Quaternion< NUMBER >::operator * ( const NUMBER  s  )  [inline]

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::operator *= ( const NUMBER  s  )  [inline]

template<class NUMBER>
This VolVis::Quaternion< NUMBER >::operator/ ( const NUMBER  s  )  [inline]

template<class NUMBER>
This& VolVis::Quaternion< NUMBER >::operator/= ( const NUMBER  s  )  [inline]

template<class NUMBER>
This VolVis::Quaternion< NUMBER >::operator~ (  )  [inline]


Member Data Documentation

template<class NUMBER>
NUMBER VolVis::Quaternion< NUMBER >::w [protected]

template<class NUMBER>
NUMBER VolVis::Quaternion< NUMBER >::x [protected]

template<class NUMBER>
NUMBER VolVis::Quaternion< NUMBER >::y [protected]

template<class NUMBER>
NUMBER VolVis::Quaternion< NUMBER >::z [protected]


The documentation for this class was generated from the following file:
Generated on Wed Jan 17 13:07:38 2007 for FlowVis by  doxygen 1.5.1-p1