aims::Quaternion Class Reference

#include <aims/resampling/quaternion.h>

Collaboration diagram for aims::Quaternion:

Public Member Functions

 Quaternion ()
 Quaternion (const Point4df &q)
 Quaternion (const Quaternion &q)
 Quaternion (float x, float y, float z, float t)
 ~Quaternion ()
Quaternionoperator= (const Quaternion &q)
const Point4dfvector () const
void setVector (const Point4df &vec)
AimsVector< float, 16 > rotationMatrix () const
 in OpenGL style: in columns More...
AimsVector< float, 16 > inverseRotationMatrix () const
void buildFromMatrix (const float *m)
 4x4 matrix in columns (OpenGL-style) More...
void buildFromMotion (const Motion &m)
Point3df transform (float x, float y, float z) const
 Rotates vecotor (x,y,z) More...
Point3df transform (const Point3df &p) const
 Rotates vecotor p. More...
Point3df transformInverse (const Point3df &p) const
Quaternionoperator*= (const Quaternion &q)
void norm ()
Quaternion normalized () const
void fromAxis (const Point3df &c, float phi)
Quaternion inverse () const
Point3df axis () const
float angle () const

Static Public Member Functions

static float dot (const Quaternion &a, const Quaternion &b)
static float dot (const Point4df &a, const Point4df &b)
static Point4df cross (const Point4df &a, const Point4df &b)
static Point3df norm (const Point3df &a)

Protected Attributes

Point4df _vector


Quaternion operator* (const Quaternion &, const Quaternion &)

Detailed Description

Definition at line 51 of file quaternion.h.

Constructor & Destructor Documentation

aims::Quaternion::Quaternion ( )
aims::Quaternion::Quaternion ( const Point4df q)
aims::Quaternion::Quaternion ( const Quaternion q)
aims::Quaternion::Quaternion ( float  x,
float  y,
float  z,
float  t 
aims::Quaternion::~Quaternion ( )

Member Function Documentation

float aims::Quaternion::angle ( ) const
Point3df aims::Quaternion::axis ( ) const
void aims::Quaternion::buildFromMatrix ( const float *  m)

4x4 matrix in columns (OpenGL-style)

void aims::Quaternion::buildFromMotion ( const Motion m)
static Point4df aims::Quaternion::cross ( const Point4df a,
const Point4df b 
static float aims::Quaternion::dot ( const Quaternion a,
const Quaternion b 

Definition at line 85 of file quaternion.h.

References _vector.

static float aims::Quaternion::dot ( const Point4df a,
const Point4df b 
void aims::Quaternion::fromAxis ( const Point3df c,
float  phi 
Quaternion aims::Quaternion::inverse ( ) const
AimsVector<float,16> aims::Quaternion::inverseRotationMatrix ( ) const
void aims::Quaternion::norm ( )
static Point3df aims::Quaternion::norm ( const Point3df a)
Quaternion aims::Quaternion::normalized ( ) const
Quaternion& aims::Quaternion::operator*= ( const Quaternion q)
Quaternion& aims::Quaternion::operator= ( const Quaternion q)
AimsVector<float,16> aims::Quaternion::rotationMatrix ( ) const

in OpenGL style: in columns

void aims::Quaternion::setVector ( const Point4df vec)
Point3df aims::Quaternion::transform ( float  x,
float  y,
float  z 
) const

Rotates vecotor (x,y,z)

Definition at line 72 of file quaternion.h.

Point3df aims::Quaternion::transform ( const Point3df p) const

Rotates vecotor p.

Point3df aims::Quaternion::transformInverse ( const Point3df p) const
const Point4df& aims::Quaternion::vector ( ) const

Definition at line 63 of file quaternion.h.

References _vector.

Friends And Related Function Documentation

Quaternion operator* ( const Quaternion ,
const Quaternion  

Member Data Documentation

Point4df aims::Quaternion::_vector

Definition at line 92 of file quaternion.h.

Referenced by dot(), and vector().

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