Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

mlib::Wquat Class Reference

A quaternion in World coordinates. More...

#include <points.H>

Inheritance diagram for mlib::Wquat:

Inheritance graph
[legend]
Collaboration diagram for mlib::Wquat:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Quat ()
 Default constructor. Creates a quaternion with a unit scalar component and a default constructed vector component.
 Quat (const Wvec &v, double w)
 Constructor that creates a quaternion with the scalar and vector components specified in the arguments.
 Quat (double w)
 Constructor that creates a quaternion with the specifeed scalar component and a default constructed vector component.
 Quat (const Wvec &v)
 Constructor that creates a quaternion with the specified vector component and a zero scalar component.
 Quat (const Wtransf &t)
 Create quaternion from rotation matrix.
 Quat (const Wvec &v1, const Wvec &v2)
 Create quaternion to rotate from v1 to v2.
const Wvecv () const
 Accesses the vector component.
Wvecv ()
 Accesses the vector component.
double w () const
 Accesses the scalar component.
double & w ()
 Accesses the scalar component.
double norm () const
Wquat conjugate () const
Wquat inverse () const
Wquat normalized () const
double dot (const Wquat &q) const
Wquat operator+ (Wquatq) const
Wquat operator * (Wquatq) const
Wquat operator * (double s) const
Wquat operator/ (Wquatq) const
Wquat operator/ (double s) const
Constructors
 Wquat ()
 Wquat (CWvec &v, double w)
 Wquat (double s)
 Wquat (CWtransf &t)
 Wquat (CWvec &v1, CWvec &v2)

Static Public Member Functions

static Wquat slerp (const Wquat &q1, const Wquat &q2, double u)
 Spherical linear interpolation.

Protected Attributes

Wvec _v
double _w

Friends

Wquat operator * (double s, const Wquat &q)
Wquat operator- (const Wquat &q)

Detailed Description

A quaternion in World coordinates.

Definition at line 498 of file points.H.


Constructor & Destructor Documentation

mlib::Wquat::Wquat  )  [inline]
 

Definition at line 506 of file points.H.

mlib::Wquat::Wquat CWvec v,
double  w
[inline]
 

Definition at line 507 of file points.H.

mlib::Wquat::Wquat double  s  )  [inline]
 

Definition at line 509 of file points.H.

mlib::Wquat::Wquat CWtransf t  )  [inline]
 

Definition at line 511 of file points.H.

mlib::Wquat::Wquat CWvec v1,
CWvec v2
[inline]
 

Definition at line 513 of file points.H.


Member Function Documentation

Wquat mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::conjugate  )  const [inline, inherited]
 

Definition at line 87 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::_v, and mlib::Quat< QUAT, M, P, V, L >::_w.

double mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::dot const Wquat q  )  const [inline, inherited]
 

Definition at line 93 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::v(), and mlib::Quat< QUAT, M, P, V, L >::w().

Wquat mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::inverse  )  const [inline, inherited]
 

Definition at line 89 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::conjugate(), and mlib::Quat< QUAT, M, P, V, L >::norm().

double mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::norm  )  const [inline, inherited]
 

Definition at line 85 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::_v, and mlib::Quat< QUAT, M, P, V, L >::_w.

Wquat mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::normalized  )  const [inline, inherited]
 

Definition at line 91 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::norm().

Wquat mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::operator * double  s  )  const [inline, inherited]
 

Definition at line 113 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::v(), and mlib::Quat< QUAT, M, P, V, L >::w().

Wquat mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::operator * Wquat   q  )  const [inline, inherited]
 

Definition at line 102 of file quat.H.

References mlib::cross(), mlib::Quat< QUAT, M, P, V, L >::v(), and mlib::Quat< QUAT, M, P, V, L >::w().

Wquat mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::operator+ Wquat   q  )  const [inline, inherited]
 

Definition at line 100 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::v(), and mlib::Quat< QUAT, M, P, V, L >::w().

Wquat mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::operator/ double  s  )  const [inline, inherited]
 

Definition at line 114 of file quat.H.

Wquat mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::operator/ Wquat   q  )  const [inline, inherited]
 

Definition at line 107 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::operator *().

mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::Quat const Wvec v1,
const Wvec v2
[inherited]
 

Create quaternion to rotate from v1 to v2.

mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::Quat const Wtransf t  )  [inherited]
 

Create quaternion from rotation matrix.

mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::Quat const Wvec v  )  [inline, inherited]
 

Constructor that creates a quaternion with the specified vector component and a zero scalar component.

Definition at line 58 of file quat.H.

mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::Quat double  w  )  [inline, inherited]
 

Constructor that creates a quaternion with the specifeed scalar component and a default constructed vector component.

Definition at line 54 of file quat.H.

mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::Quat const Wvec v,
double  w
[inline, inherited]
 

Constructor that creates a quaternion with the scalar and vector components specified in the arguments.

Definition at line 50 of file quat.H.

mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::Quat  )  [inline, inherited]
 

Default constructor. Creates a quaternion with a unit scalar component and a default constructed vector component.

This most likely creates a zero vector as the vector component. So, the quaternion should be the identity quaternion.

Definition at line 46 of file quat.H.

static Wquat mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::slerp const Wquat q1,
const Wquat q2,
double  u
[static, inherited]
 

Spherical linear interpolation.

Wvec & mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::v  )  [inline, inherited]
 

Accesses the vector component.

Definition at line 74 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::_v.

const Wvec & mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::v  )  const [inline, inherited]
 

Accesses the vector component.

Definition at line 72 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::_v.

double& mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::w  )  [inline, inherited]
 

Accesses the scalar component.

Definition at line 78 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::_w.

double mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::w  )  const [inline, inherited]
 

Accesses the scalar component.

Definition at line 76 of file quat.H.

References mlib::Quat< QUAT, M, P, V, L >::_w.


Friends And Related Function Documentation

Wquat operator * double  s,
const Wquat q
[friend, inherited]
 

Definition at line 116 of file quat.H.

Wquat operator- const Wquat q  )  [friend, inherited]
 

Definition at line 118 of file quat.H.


Member Data Documentation

Wvec mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::_v [protected, inherited]
 

Definition at line 33 of file quat.H.

double mlib::Quat< Wquat , Wtransf , Wpt , Wvec , Wline >::_w [protected, inherited]
 

Definition at line 34 of file quat.H.


The documentation for this class was generated from the following file:
Generated on Mon Sep 18 11:48:15 2006 for jot by  doxygen 1.4.4