TORCS  1.3.9
The Open Racing Car Simulator
Quaternion Class Reference

#include <Quaternion.h>

Inheritance diagram for Quaternion:
Collaboration diagram for Quaternion:

Public Member Functions

 Quaternion ()
 
 Quaternion (const float v[4])
 
 Quaternion (const double v[4])
 
 Quaternion (Scalar x, Scalar y, Scalar z, Scalar w)
 
 Quaternion (const Vector &axis, Scalar angle)
 
 Quaternion (Scalar yaw, Scalar pitch, Scalar roll)
 
void setRotation (const Vector &axis, Scalar angle)
 
void setEuler (Scalar yaw, Scalar pitch, Scalar roll)
 
Quaternionoperator+= (const Quaternion &q)
 
Quaternionoperator-= (const Quaternion &q)
 
Quaternionoperator*= (const Quaternion &q)
 
Quaternionoperator*= (Scalar s)
 
Quaternionoperator/= (Scalar s)
 
Scalar length2 () const
 
Scalar length () const
 
bool approxZero () const
 
void normalize ()
 
Quaternion normalized () const
 
void conjugate ()
 
Quaternion conjugate () const
 
void invert ()
 
Quaternion inverse () const
 
- Public Member Functions inherited from Tuple4
 Tuple4 ()
 
 Tuple4 (const float v[4])
 
 Tuple4 (const double v[4])
 
 Tuple4 (Scalar x, Scalar y, Scalar z, Scalar w)
 
Scalaroperator[] (int i)
 
const Scalaroperator[] (int i) const
 
ScalargetValue ()
 
const ScalargetValue () const
 
void setValue (const float v[4])
 
void setValue (const double v[4])
 
void setValue (Scalar x, Scalar y, Scalar z, Scalar w)
 

Static Public Member Functions

static Quaternion random ()
 

Additional Inherited Members

- Protected Attributes inherited from Tuple4
Scalar comp [4]
 

Detailed Description

Definition at line 33 of file Quaternion.h.

Constructor & Destructor Documentation

◆ Quaternion() [1/6]

Quaternion::Quaternion ( )
inline

Definition at line 35 of file Quaternion.h.

◆ Quaternion() [2/6]

Quaternion::Quaternion ( const float  v[4])
inline

Definition at line 36 of file Quaternion.h.

◆ Quaternion() [3/6]

Quaternion::Quaternion ( const double  v[4])
inline

Definition at line 37 of file Quaternion.h.

◆ Quaternion() [4/6]

Quaternion::Quaternion ( Scalar  x,
Scalar  y,
Scalar  z,
Scalar  w 
)
inline

Definition at line 38 of file Quaternion.h.

◆ Quaternion() [5/6]

Quaternion::Quaternion ( const Vector axis,
Scalar  angle 
)
inline

Definition at line 39 of file Quaternion.h.

Here is the call graph for this function:

◆ Quaternion() [6/6]

Quaternion::Quaternion ( Scalar  yaw,
Scalar  pitch,
Scalar  roll 
)
inline

Definition at line 40 of file Quaternion.h.

Here is the call graph for this function:

Member Function Documentation

◆ approxZero()

bool Quaternion::approxZero ( ) const
inline

Definition at line 170 of file Quaternion.h.

Here is the call graph for this function:

◆ conjugate() [1/2]

void Quaternion::conjugate ( )
inline

Definition at line 175 of file Quaternion.h.

◆ conjugate() [2/2]

Quaternion Quaternion::conjugate ( ) const
inline

Definition at line 179 of file Quaternion.h.

Here is the call graph for this function:

◆ inverse()

Quaternion Quaternion::inverse ( ) const
inline

Definition at line 188 of file Quaternion.h.

Here is the call graph for this function:

◆ invert()

void Quaternion::invert ( )
inline

Definition at line 183 of file Quaternion.h.

Here is the call graph for this function:

◆ length()

Scalar Quaternion::length ( ) const
inline

Definition at line 168 of file Quaternion.h.

Here is the call graph for this function:

◆ length2()

Scalar Quaternion::length2 ( ) const
inline

Definition at line 167 of file Quaternion.h.

Here is the call graph for this function:

◆ normalize()

void Quaternion::normalize ( void  )
inline

Definition at line 172 of file Quaternion.h.

Here is the call graph for this function:

◆ normalized()

Quaternion Quaternion::normalized ( ) const
inline

Definition at line 173 of file Quaternion.h.

Here is the call graph for this function:

◆ operator*=() [1/2]

Quaternion & Quaternion::operator*= ( const Quaternion q)
inline

Definition at line 114 of file Quaternion.h.

Here is the call graph for this function:

◆ operator*=() [2/2]

Quaternion & Quaternion::operator*= ( Scalar  s)
inline

Definition at line 122 of file Quaternion.h.

◆ operator+=()

Quaternion & Quaternion::operator+= ( const Quaternion q)
inline

Definition at line 104 of file Quaternion.h.

◆ operator-=()

Quaternion & Quaternion::operator-= ( const Quaternion q)
inline

Definition at line 109 of file Quaternion.h.

◆ operator/=()

Quaternion & Quaternion::operator/= ( Scalar  s)
inline

Definition at line 127 of file Quaternion.h.

Here is the call graph for this function:

◆ random()

Quaternion Quaternion::random ( )
inlinestatic

Definition at line 202 of file Quaternion.h.

Here is the call graph for this function:

◆ setEuler()

void Quaternion::setEuler ( Scalar  yaw,
Scalar  pitch,
Scalar  roll 
)
inline

Definition at line 51 of file Quaternion.h.

Here is the call graph for this function:

◆ setRotation()

void Quaternion::setRotation ( const Vector axis,
Scalar  angle 
)
inline

Definition at line 44 of file Quaternion.h.

Here is the call graph for this function:

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