vcg::Quaternion< S > Class Template Reference

#include <quaternion.h>

Inheritance diagram for vcg::Quaternion< S >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

void FromAxis (const S phi, const Point3< S > &a)
void FromEulerAngles (S alpha, S beta, S gamma)
void FromMatrix (const Matrix33< S > &m)
void FromMatrix (const Matrix44< S > &m)
 warning m must be a rotation matrix, result is unpredictable otherwise
Quaternion< S > Inverse () const
void Invert ()
Quaternion operator* (const Quaternion &q) const
Quaternion operator* (const S &s) const
Quaternionoperator*= (const Quaternion &q)
 Quaternion (const S phi, const Point3< S > &a)
 Quaternion (const Point4< S > p)
 Quaternion (const S v0, const S v1, const S v2, const S v3)
 Quaternion ()
Point3< S > Rotate (const Point3< S > vec) const
void SetIdentity ()
void ToAxis (S &phi, Point3< S > &a) const
void ToEulerAngles (S &alpha, S &beta, S &gamma) const
void ToMatrix (Matrix33< S > &m) const
void ToMatrix (Matrix44< S > &m) const
S & V (const int i)
const S & V (const int i) const

Static Public Member Functions

template<class Q >
static Quaternion Construct (const Quaternion< Q > &b)
 constuctor that imports from different Quaternion types

Detailed Description

template<class S>
class vcg::Quaternion< S >

Class quaternion. A quaternion is a point in the unit sphere in four dimension: all rotations in three-dimensional space can be represented by a quaternion.

Definition at line 121 of file quaternion.h.


Constructor & Destructor Documentation

template<class S>
vcg::Quaternion< S >::Quaternion (  )  [inline]

Definition at line 124 of file quaternion.h.

template<class S>
vcg::Quaternion< S >::Quaternion ( const S  v0,
const S  v1,
const S  v2,
const S  v3 
) [inline]

Definition at line 125 of file quaternion.h.

template<class S>
vcg::Quaternion< S >::Quaternion ( const Point4< S >  p  )  [inline]

Definition at line 126 of file quaternion.h.

template<class S>
Quaternion< S >::Quaternion ( const S  phi,
const Point3< S > &  a 
) [inline]

Definition at line 184 of file quaternion.h.


Member Function Documentation

template<class S>
template<class Q >
static Quaternion vcg::Quaternion< S >::Construct ( const Quaternion< Q > &  b  )  [inline, static]

constuctor that imports from different Quaternion types

Definition at line 161 of file quaternion.h.

template<class S>
void Quaternion< S >::FromAxis ( const S  phi,
const Point3< S > &  a 
) [inline]

Definition at line 235 of file quaternion.h.

template<class S>
void Quaternion< S >::FromEulerAngles ( alpha,
beta,
gamma 
) [inline]

Definition at line 376 of file quaternion.h.

template<class S>
void Quaternion< S >::FromMatrix ( const Matrix33< S > &  m  )  [inline]

Definition at line 358 of file quaternion.h.

template<class S>
void Quaternion< S >::FromMatrix ( const Matrix44< S > &  m  )  [inline]

warning m must be a rotation matrix, result is unpredictable otherwise

Definition at line 355 of file quaternion.h.

template<class S >
Quaternion< S > Quaternion< S >::Inverse (  )  const [inline]

Definition at line 231 of file quaternion.h.

template<class S >
void Quaternion< S >::Invert (  )  [inline]

Definition at line 225 of file quaternion.h.

template<class S>
Quaternion< S > Quaternion< S >::operator* ( const Quaternion< S > &  q  )  const [inline]

Definition at line 193 of file quaternion.h.

template<class S>
Quaternion< S > Quaternion< S >::operator* ( const S &  s  )  const [inline]

Definition at line 189 of file quaternion.h.

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

Definition at line 213 of file quaternion.h.

template<class S>
Point3< S > Quaternion< S >::Rotate ( const Point3< S >  vec  )  const [inline]

Definition at line 260 of file quaternion.h.

template<class S >
void Quaternion< S >::SetIdentity (  )  [inline]

Definition at line 179 of file quaternion.h.

template<class S>
void Quaternion< S >::ToAxis ( S &  phi,
Point3< S > &  a 
) const [inline]

Definition at line 246 of file quaternion.h.

template<class S>
void Quaternion< S >::ToEulerAngles ( S &  alpha,
S &  beta,
S &  gamma 
) const [inline]

Definition at line 364 of file quaternion.h.

template<class S>
void Quaternion< S >::ToMatrix ( Matrix33< S > &  m  )  const [inline]

Definition at line 314 of file quaternion.h.

template<class S>
void Quaternion< S >::ToMatrix ( Matrix44< S > &  m  )  const [inline]

Definition at line 303 of file quaternion.h.

template<class S>
S& vcg::Quaternion< S >::V ( const int  i  )  [inline]

Reimplemented from vcg::Point4< S >.

Definition at line 157 of file quaternion.h.

template<class S>
const S& vcg::Quaternion< S >::V ( const int  i  )  const [inline]

Reimplemented from vcg::Point4< S >.

Definition at line 156 of file quaternion.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


vcglib
Author(s): Christian Bersch
autogenerated on Fri Jan 11 09:23:04 2013