#include <VQuaternion.h>
Public Member Functions | |
VQuaternion () | |
VQuaternion (const VVector &vecV, const float fS) | |
VQuaternion (const VVector &vecV) | |
VQuaternion (const float fAngle, const VVector &vecAxis) | |
VQuaternion (const VVector &vecFrom, const VVector &vecTo) | |
~VQuaternion () | |
void | set (const VVector &vecV, const float fS) |
void | setVector (const VVector &vecV) |
void | setScalar (const float fS) |
const VVector & | getVector () const |
const float & | getScalar () const |
const float | getMagnitude () const |
const VQuaternion | getNormalized () const |
const VQuaternion | getInverse () const |
void | normalize () |
void | invert () |
VVector | getForwardVector () |
VVector | getUpVector () |
VVector | getRightVector () |
void | applyRotationX (float mdegrees) |
void | applyRotationY (float mdegrees) |
void | applyRotationZ (float mdegrees) |
const bool | operator== (const VQuaternion &quaOther) const |
const bool | operator!= (const VQuaternion &quaOther) const |
const VQuaternion & | operator *= (const float &fOther) |
const VQuaternion & | operator/= (const float &fOther) |
const VQuaternion & | operator+= (const VQuaternion &quaOther) |
const VQuaternion & | operator-= (const VQuaternion &quaOther) |
const VQuaternion & | operator *= (const VQuaternion &quaOther) |
const VQuaternion | operator * (const float fOther) const |
const VQuaternion | operator/ (const float fOther) const |
const VQuaternion | operator+ (const VQuaternion &quaOther) const |
const VQuaternion | operator- (const VQuaternion &quaOther) const |
const VQuaternion | operator * (const VQuaternion &quaOther) const |
const VVector | operator * (const VVector &vecOther) const |
Static Public Member Functions | |
static VQuaternion | generateRotationX (float mdegrees) |
static VQuaternion | generateRotationY (float mdegrees) |
static VQuaternion | generateRotationZ (float mdegrees) |
Static Public Attributes | |
static VVector | WORLD_X_AXIS = VVector(1.0f, 0.0f, 0.0f) |
static VVector | WORLD_Y_AXIS = VVector(0.0f, 1.0f, 0.0f) |
static VVector | WORLD_Z_AXIS = VVector(0.0f, 0.0f, 1.0f) |
static VVector | FORWARD_VECTOR = VVector(0.0f, 0.0f, 1.0f) |
Private Attributes | |
VVector | m_vecVector |
float | m_fScalar |
Definition at line 8 of file VQuaternion.h.
VQuaternion::VQuaternion | ( | ) | [inline] |
Definition at line 17 of file VQuaternion.h.
Referenced by generateRotationX(), generateRotationY(), generateRotationZ(), getInverse(), operator *(), and VQuaternion().
VQuaternion::VQuaternion | ( | const VVector & | vecV, | |
const float | fS | |||
) | [inline] |
Definition at line 22 of file VQuaternion.h.
VQuaternion::VQuaternion | ( | const VVector & | vecV | ) | [inline] |
Definition at line 27 of file VQuaternion.h.
VQuaternion::VQuaternion | ( | const float | fAngle, | |
const VVector & | vecAxis | |||
) | [inline] |
Definition at line 38 of file VQuaternion.h.
References VVector::getCross(), VVector::getDot(), VVector::getNormalized(), and VQuaternion().
VQuaternion::~VQuaternion | ( | ) | [inline] |
Definition at line 45 of file VQuaternion.h.
void VQuaternion::set | ( | const VVector & | vecV, | |
const float | fS | |||
) | [inline] |
Definition at line 49 of file VQuaternion.h.
References m_fScalar, m_vecVector, and normalize().
Referenced by operator>>().
void VQuaternion::setVector | ( | const VVector & | vecV | ) | [inline] |
void VQuaternion::setScalar | ( | const float | fS | ) | [inline] |
const VVector& VQuaternion::getVector | ( | ) | const [inline] |
Definition at line 66 of file VQuaternion.h.
References m_vecVector.
Referenced by getInverse(), getMagnitude(), VMatrix::getRotated(), operator *(), operator *=(), operator+=(), operator-=(), operator/=(), operator<<(), operator==(), and setScalar().
const float& VQuaternion::getScalar | ( | ) | const [inline] |
Definition at line 71 of file VQuaternion.h.
References m_fScalar.
Referenced by getInverse(), getMagnitude(), VMatrix::getRotated(), operator *=(), operator+=(), operator-=(), operator/=(), operator<<(), operator==(), and setVector().
const float VQuaternion::getMagnitude | ( | ) | const [inline] |
Definition at line 76 of file VQuaternion.h.
References getScalar(), and getVector().
Referenced by getNormalized().
const VQuaternion VQuaternion::getNormalized | ( | ) | const [inline] |
Definition at line 81 of file VQuaternion.h.
References getMagnitude(), m_fScalar, and m_vecVector.
Referenced by normalize().
const VQuaternion VQuaternion::getInverse | ( | ) | const [inline] |
Definition at line 95 of file VQuaternion.h.
References getScalar(), getVector(), and VQuaternion().
Referenced by invert(), operator *(), and VCamera::updateViewMatrix().
void VQuaternion::normalize | ( | ) | [inline] |
Definition at line 100 of file VQuaternion.h.
References getNormalized().
Referenced by VCamera::lookInDirection(), VCamera::rotate(), VCamera::rotateX(), VCamera::rotateY(), VCamera::rotateZ(), set(), and VCamera::updateViewMatrix().
void VQuaternion::invert | ( | ) | [inline] |
VVector VQuaternion::getForwardVector | ( | ) | [inline] |
Definition at line 110 of file VQuaternion.h.
References FORWARD_VECTOR.
Referenced by VCamera::getAtVector(), and VCamera::moveForward().
VVector VQuaternion::getUpVector | ( | ) | [inline] |
Definition at line 115 of file VQuaternion.h.
References WORLD_Y_AXIS.
Referenced by VCamera::getUpVector().
VVector VQuaternion::getRightVector | ( | ) | [inline] |
Definition at line 120 of file VQuaternion.h.
References WORLD_X_AXIS.
Referenced by VCamera::moveSideWards().
static VQuaternion VQuaternion::generateRotationX | ( | float | mdegrees | ) | [inline, static] |
Definition at line 125 of file VQuaternion.h.
References VQuaternion(), and WORLD_X_AXIS.
Referenced by applyRotationX().
static VQuaternion VQuaternion::generateRotationY | ( | float | mdegrees | ) | [inline, static] |
Definition at line 130 of file VQuaternion.h.
References VQuaternion(), and WORLD_Y_AXIS.
Referenced by applyRotationY().
static VQuaternion VQuaternion::generateRotationZ | ( | float | mdegrees | ) | [inline, static] |
Definition at line 135 of file VQuaternion.h.
References VQuaternion(), and WORLD_Z_AXIS.
Referenced by applyRotationZ().
void VQuaternion::applyRotationX | ( | float | mdegrees | ) | [inline] |
Definition at line 140 of file VQuaternion.h.
References generateRotationX().
Referenced by VCamera::rotateX().
void VQuaternion::applyRotationY | ( | float | mdegrees | ) | [inline] |
Definition at line 146 of file VQuaternion.h.
References generateRotationY().
Referenced by VCamera::rotateY().
void VQuaternion::applyRotationZ | ( | float | mdegrees | ) | [inline] |
Definition at line 152 of file VQuaternion.h.
References generateRotationZ().
Referenced by VCamera::rotate(), and VCamera::rotateZ().
const bool VQuaternion::operator== | ( | const VQuaternion & | quaOther | ) | const [inline] |
const bool VQuaternion::operator!= | ( | const VQuaternion & | quaOther | ) | const [inline] |
Definition at line 163 of file VQuaternion.h.
const VQuaternion& VQuaternion::operator *= | ( | const float & | fOther | ) | [inline] |
const VQuaternion& VQuaternion::operator/= | ( | const float & | fOther | ) | [inline] |
const VQuaternion& VQuaternion::operator+= | ( | const VQuaternion & | quaOther | ) | [inline] |
const VQuaternion& VQuaternion::operator-= | ( | const VQuaternion & | quaOther | ) | [inline] |
const VQuaternion& VQuaternion::operator *= | ( | const VQuaternion & | quaOther | ) | [inline] |
Definition at line 192 of file VQuaternion.h.
References VVector::getCross(), VVector::getDot(), getScalar(), and getVector().
const VQuaternion VQuaternion::operator * | ( | const float | fOther | ) | const [inline] |
Definition at line 200 of file VQuaternion.h.
const VQuaternion VQuaternion::operator/ | ( | const float | fOther | ) | const [inline] |
Definition at line 207 of file VQuaternion.h.
const VQuaternion VQuaternion::operator+ | ( | const VQuaternion & | quaOther | ) | const [inline] |
Definition at line 214 of file VQuaternion.h.
const VQuaternion VQuaternion::operator- | ( | const VQuaternion & | quaOther | ) | const [inline] |
Definition at line 221 of file VQuaternion.h.
const VQuaternion VQuaternion::operator * | ( | const VQuaternion & | quaOther | ) | const [inline] |
Definition at line 228 of file VQuaternion.h.
Definition at line 235 of file VQuaternion.h.
References getInverse(), VVector::getMagnitude(), getVector(), and VQuaternion().
VVector VQuaternion::WORLD_X_AXIS = VVector(1.0f, 0.0f, 0.0f) [static] |
Definition at line 12 of file VQuaternion.h.
Referenced by generateRotationX(), and getRightVector().
VVector VQuaternion::WORLD_Y_AXIS = VVector(0.0f, 1.0f, 0.0f) [static] |
VVector VQuaternion::WORLD_Z_AXIS = VVector(0.0f, 0.0f, 1.0f) [static] |
VVector VQuaternion::FORWARD_VECTOR = VVector(0.0f, 0.0f, 1.0f) [static] |
VVector VQuaternion::m_vecVector [private] |
Definition at line 239 of file VQuaternion.h.
Referenced by getNormalized(), getVector(), and set().
float VQuaternion::m_fScalar [private] |
Definition at line 243 of file VQuaternion.h.
Referenced by getNormalized(), getScalar(), and set().