A.I.M.S


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
 

Friends

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
static float aims::Quaternion::dot ( const Quaternion a,
const Quaternion b 
)
inlinestatic

Definition at line 85 of file quaternion.h.

References _vector.

static float aims::Quaternion::dot ( const Point4df a,
const Point4df b 
)
static
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)
static
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
inline

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
inline

Definition at line 63 of file quaternion.h.

References _vector.

Friends And Related Function Documentation

Quaternion operator* ( const Quaternion ,
const Quaternion  
)
friend

Member Data Documentation

Point4df aims::Quaternion::_vector
protected

Definition at line 92 of file quaternion.h.

Referenced by dot(), and vector().


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