Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FX::FXQuatd Class Reference

double-precision quaternion More...

#include <FXQuatd.h>

Inheritance diagram for FX::FXQuatd:

FX::FXVec4d List of all members.

Public Member Functions

 FXQuatd ()
 FXQuatd (const FXQuatd &q)
 FXQuatd (FXdouble xx, FXdouble yy, FXdouble zz, FXdouble ww)
 FXQuatd (const FXdouble v[])
 FXQuatd (const FXVec3d &axis, FXdouble phi=0.0)
 FXQuatd (FXdouble roll, FXdouble pitch, FXdouble yaw)
FXQuatdadjust ()
void setAxisAngle (const FXVec3d &axis, FXdouble phi=0.0)
void getAxisAngle (FXVec3d &axis, FXdouble &phi) const
void setRollPitchYaw (FXdouble roll, FXdouble pitch, FXdouble yaw)
void getRollPitchYaw (FXdouble &roll, FXdouble &pitch, FXdouble &yaw) const

Friends

FXQuatd exp (const FXQuatd &q)
FXQuatd log (const FXQuatd &q)
FXQuatd invert (const FXQuatd &q)
FXQuatd unitinvert (const FXQuatd &q)
FXQuatd conj (const FXQuatd &q)
FXQuatd operator * (const FXQuatd &p, const FXQuatd &q)
FXVec3d operator * (const FXQuatd &quat, const FXVec3d &vec)
FXQuatd arc (const FXVec3d &a, const FXVec3d &b)
FXQuatd lerp (const FXQuatd &u, const FXQuatd &v, FXdouble f)

Detailed Description

double-precision quaternion


Constructor & Destructor Documentation

FX::FXQuatd::FXQuatd  )  [inline]
 

Constructors.

FX::FXQuatd::FXQuatd const FXQuatd q  )  [inline]
 

Copy constructor.

FX::FXQuatd::FXQuatd FXdouble  xx,
FXdouble  yy,
FXdouble  zz,
FXdouble  ww
[inline]
 

Construct from components.

FX::FXQuatd::FXQuatd const FXVec3d axis,
FXdouble  phi = 0.0
 

Construct from axis and angle.

FX::FXQuatd::FXQuatd FXdouble  roll,
FXdouble  pitch,
FXdouble  yaw
 

Construct from euler angles yaw (z), pitch (y), and roll (x).


Member Function Documentation

FXQuatd& FX::FXQuatd::adjust  ) 
 

Adjust quaternion length.

void FX::FXQuatd::setAxisAngle const FXVec3d axis,
FXdouble  phi = 0.0
 

Set quaternion from axis and angle.

void FX::FXQuatd::getAxisAngle FXVec3d axis,
FXdouble &  phi
const
 

Obtain axis and angle from quaternion.

void FX::FXQuatd::setRollPitchYaw FXdouble  roll,
FXdouble  pitch,
FXdouble  yaw
 

Set quaternion from yaw (z), pitch (y), and roll (x).

void FX::FXQuatd::getRollPitchYaw FXdouble &  roll,
FXdouble &  pitch,
FXdouble &  yaw
const
 

Obtain yaw, pitch, and roll from quaternion.


Friends And Related Function Documentation

FXQuatd exp const FXQuatd q  )  [friend]
 

Exponentiate quaternion.

FXQuatd log const FXQuatd q  )  [friend]
 

Take logarithm of quaternion.

FXQuatd invert const FXQuatd q  )  [friend]
 

Invert quaternion.

FXQuatd unitinvert const FXQuatd q  )  [friend]
 

Invert unit quaternion.

FXQuatd conj const FXQuatd q  )  [friend]
 

Conjugate quaternion.

FXQuatd operator * const FXQuatd p,
const FXQuatd q
[friend]
 

Multiply quaternions.

FXQuatd arc const FXVec3d a,
const FXVec3d b
[friend]
 

Construct quaternion from arc a->b on unit sphere.

FXQuatd lerp const FXQuatd u,
const FXQuatd v,
FXdouble  f
[friend]
 

Spherical lerp.

Copyright © 1997-2004 Jeroen van der Zijp