class Quaternion


Public Methods

[more] Quaternion()
Constructors / Destructors
[more] Quaternion(const Vector3D &v)
[more] Quaternion(const double qw, const Vector3D &qv)
Initialize from a general vector
[more] ~Quaternion()
Initialize from a scalar and a vector
[more]Quaternion operator*(const Quaternion &q) const
Overloaded operators
[more]Quaternion operator*(const double d) const
q1*q2: applies first rotation q2 and then, q1.
[more]Quaternion& operator*=(const double d)
[more]Quaternion operator/(const double d) const
[more]Quaternion& operator /=(const double d)
[more]Quaternion operator+(const Quaternion & q) const
[more]Quaternion& operator+=(const Quaternion & q)
[more]double getQi(int i) const
Misc
[more]inline double getW(void) const
[more]inline Vector3D getV(void) const
[more]void SetfromZAxis(const Vector3D &e)
[more]void SetfromAngleandAxis(const double angle, const Vector3D &qv, bool rad)
Initialize from angle of rotation and a general vector.
[more]void SetfromEulerAngles(const double psi, const double theta, const double phi)
[more]void Set(const double q0, const double q1, const double q2, const double q3 )
Initialize Quaternion from Euler Angles
[more]void GetEulerAngles(double &psi, double &theta, double &phi)
Initialize from scalars
[more]void GetOpenGLRotationMatrix(double* m)
Get Euler Angles from Quaternion [rad]
[more]Quaternion Unit(void) const
[more]void Unitize(void)
Quaternion& Unitize(void);
[more]double Length(void) const
[more]Vector3D RotateVector3D(const Vector3D &v) const
[more]Quaternion& Randomize(double radius)
[more]Quaternion Inverse(void) const
[more]Quaternion Conjugate(void) const
[more]double Norm(void) const
[more]void Out(void) const
[more]int ParseXML(xmlDocPtr doc, xmlNodePtr cur)
[more]string GetXMLnode(string label) const

Private Fields

[more]double w
[more]Vector3D v
Angle of rotation around vector v
[more]bool unitized
Axis of rotation


Documentation

o Quaternion()
Constructors / Destructors

o Quaternion(const Vector3D &v)

o Quaternion(const double qw, const Vector3D &qv)
Initialize from a general vector

o ~Quaternion()
Initialize from a scalar and a vector

oQuaternion operator*(const Quaternion &q) const
Overloaded operators

oQuaternion operator*(const double d) const
q1*q2: applies first rotation q2 and then, q1. ?

oQuaternion& operator*=(const double d)

oQuaternion operator/(const double d) const

oQuaternion& operator /=(const double d)

oQuaternion operator+(const Quaternion & q) const

oQuaternion& operator+=(const Quaternion & q)

odouble getQi(int i) const
Misc

oinline double getW(void) const

oinline Vector3D getV(void) const

ovoid SetfromZAxis(const Vector3D &e)

ovoid SetfromAngleandAxis(const double angle, const Vector3D &qv, bool rad)
Initialize from angle of rotation and a general vector. (angle in radians:rad=1, angle in degrees:rad=0)

ovoid SetfromEulerAngles(const double psi, const double theta, const double phi)

ovoid Set(const double q0, const double q1, const double q2, const double q3 )
Initialize Quaternion from Euler Angles

ovoid GetEulerAngles(double &psi, double &theta, double &phi)
Initialize from scalars

ovoid GetOpenGLRotationMatrix(double* m)
Get Euler Angles from Quaternion [rad]

oQuaternion Unit(void) const

ovoid Unitize(void)
Quaternion& Unitize(void);

odouble Length(void) const

oVector3D RotateVector3D(const Vector3D &v) const

oQuaternion& Randomize(double radius)

oQuaternion Inverse(void) const

oQuaternion Conjugate(void) const

odouble Norm(void) const

ovoid Out(void) const

oint ParseXML(xmlDocPtr doc, xmlNodePtr cur)

ostring GetXMLnode(string label) const

odouble w

oVector3D v
Angle of rotation around vector v

obool unitized
Axis of rotation


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.