#include <quaternion.h>
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 |
Quaternion & | operator*= (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 |
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.
vcg::Quaternion< S >::Quaternion | ( | ) | [inline] |
Definition at line 124 of file quaternion.h.
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.
vcg::Quaternion< S >::Quaternion | ( | const Point4< S > | p | ) | [inline] |
Definition at line 126 of file quaternion.h.
Quaternion< S >::Quaternion | ( | const S | phi, | |
const Point3< S > & | a | |||
) | [inline] |
Definition at line 184 of file quaternion.h.
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.
void Quaternion< S >::FromAxis | ( | const S | phi, | |
const Point3< S > & | a | |||
) | [inline] |
Definition at line 235 of file quaternion.h.
void Quaternion< S >::FromEulerAngles | ( | S | alpha, | |
S | beta, | |||
S | gamma | |||
) | [inline] |
Definition at line 376 of file quaternion.h.
void Quaternion< S >::FromMatrix | ( | const Matrix33< S > & | m | ) | [inline] |
Definition at line 358 of file quaternion.h.
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.
Quaternion< S > Quaternion< S >::Inverse | ( | ) | const [inline] |
Definition at line 231 of file quaternion.h.
void Quaternion< S >::Invert | ( | ) | [inline] |
Definition at line 225 of file quaternion.h.
Quaternion< S > Quaternion< S >::operator* | ( | const Quaternion< S > & | q | ) | const [inline] |
Definition at line 193 of file quaternion.h.
Quaternion< S > Quaternion< S >::operator* | ( | const S & | s | ) | const [inline] |
Definition at line 189 of file quaternion.h.
Quaternion< S > & Quaternion< S >::operator*= | ( | const Quaternion< S > & | q | ) | [inline] |
Definition at line 213 of file quaternion.h.
Point3< S > Quaternion< S >::Rotate | ( | const Point3< S > | vec | ) | const [inline] |
Definition at line 260 of file quaternion.h.
void Quaternion< S >::SetIdentity | ( | ) | [inline] |
Definition at line 179 of file quaternion.h.
void Quaternion< S >::ToAxis | ( | S & | phi, | |
Point3< S > & | a | |||
) | const [inline] |
Definition at line 246 of file quaternion.h.
void Quaternion< S >::ToEulerAngles | ( | S & | alpha, | |
S & | beta, | |||
S & | gamma | |||
) | const [inline] |
Definition at line 364 of file quaternion.h.
void Quaternion< S >::ToMatrix | ( | Matrix33< S > & | m | ) | const [inline] |
Definition at line 314 of file quaternion.h.
void Quaternion< S >::ToMatrix | ( | Matrix44< S > & | m | ) | const [inline] |
Definition at line 303 of file quaternion.h.
S& vcg::Quaternion< S >::V | ( | const int | i | ) | [inline] |
Reimplemented from vcg::Point4< S >.
Definition at line 157 of file quaternion.h.
const S& vcg::Quaternion< S >::V | ( | const int | i | ) | const [inline] |
Reimplemented from vcg::Point4< S >.
Definition at line 156 of file quaternion.h.