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

FX::FXDQuat Class Reference

Quaternion (double-precision version).

#include <FXDQuat.h>

Inheritance diagram for FX::FXDQuat:

FX::FXDHVec List of all members.

Public Methods

 FXDQuat ()
 Default constructor.

 FXDQuat (const FXDVec &axis, FXdouble phi=0.0)
 Construct from axis and angle.

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

 FXDQuat (FXdouble x, FXdouble y, FXdouble z, FXdouble w)
 Construct from components.

FXDQuat & adjust ()
 Adjust quaternion length.

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

void getRollPitchYaw (FXdouble &roll, FXdouble &pitch, FXdouble &yaw)
 Obtain yaw, pitch, and roll.


Friends

FXAPI FXDQuat exp (const FXDQuat &q)
 Exponentiate quaternion.

FXAPI FXDQuat log (const FXDQuat &q)
 Take logarithm of quaternion.

FXAPI FXDQuat invert (const FXDQuat &q)
 Invert quaternion.

FXAPI FXDQuat conj (const FXDQuat &q)
 Conjugate quaternion.

FXAPI FXDQuat operator * (const FXDQuat &p, const FXDQuat &q)
 Multiply quaternions.

FXAPI FXDQuat arc (const FXDVec &a, const FXDVec &b)
 Construct quaternion from arc a->b on unit sphere.

FXAPI FXDQuat lerp (const FXDQuat &u, const FXDQuat &v, FXdouble f)
 Spherical lerp.