#include <VMatrix.h>
Public Member Functions | |
VMatrix () | |
VMatrix (const float &fElement0, const float &fElement4, const float &fElement8, const float &fElement12, const float &fElement1, const float &fElement5, const float &fElement9, const float &fElement13, const float &fElement2, const float &fElement6, const float &fElement10, const float &fElement14, const float &fElement3, const float &fElement7, const float &fElement11, const float &fElement15) | |
VMatrix (const VVector &vecOne, const VVector &vecTwo, const VVector &vecThree, const VVector &vecFour=VVector(0.0f, 0.0f, 0.0f)) | |
VMatrix (const float *pElements) | |
VMatrix (const float vfElements[4][4]) | |
VMatrix (const VQuaternion &quaRotation) | |
VMatrix (const VVector axis, float angle) | |
~VMatrix () | |
void | set (const float *pElements) |
void | clearMatrix () |
const float * | get () const |
void | set (const unsigned int i, const unsigned int j, const float &fValue) |
const float & | get (const unsigned int i, const unsigned int j) const |
const float & | get (const unsigned int i) const |
void | setRow (const unsigned int i, const float vfValues[4]) |
void | setColumn (const unsigned int i, const float vfValues[4]) |
void | setRow (const unsigned int i, const VVector &vecVector) |
void | setColumn (const unsigned int i, const VVector &vecVector) |
float & | operator() (const unsigned int i, const unsigned int j) |
const float & | operator() (const unsigned int i, const unsigned int j) const |
void | setTranslation (const VVector &vecTranslation) |
const VVector | getTranslation () const |
const VQuaternion | getRotation () const |
const VMatrix | getTranslated (const VVector &vecTranslation) const |
void | translate (const VVector &vecTranslation) |
const VMatrix | getScaled (const VVector &vecScale) const |
void | scale (const VVector &vecScale) |
VMatrix | getRotated (const VQuaternion &quaRotation) |
void | rotate (const VQuaternion &quaRotation) |
const VMatrix | getInverse () const |
void | invert () |
const VMatrix | getTransposed () const |
void | transpose () |
VVector | homogenTransform (const VVector &v) |
void | transform (float *v, float *o) |
const VVector | getRotated (const VVector &vecOther) const |
const bool | operator== (const VMatrix &matOther) const |
const bool | operator!= (const VMatrix &matOther) const |
const VMatrix | operator * (const VMatrix &matOther) const |
const VMatrix & | operator *= (const VMatrix &matOther) |
const VVector | operator * (const VVector &vecOther) const |
float & | operator[] (unsigned int n) |
Static Public Member Functions | |
static VMatrix | RotationX (const float angleRad) |
static VMatrix | RotationY (const float angleRad) |
static VMatrix | RotationZ (const float angleRad) |
Private Attributes | |
union { | |
float m_vfElements16 [16] | |
float m_vfElements44 [4][4] | |
} | m_vfElements |
Definition at line 11 of file VMatrix.h.
VMatrix::VMatrix | ( | ) | [inline] |
Definition at line 15 of file VMatrix.h.
References m_vfElements.
Referenced by getRotated(), getScaled(), getTranslated(), getTransposed(), and operator *().
VMatrix::VMatrix | ( | const float & | fElement0, | |
const float & | fElement4, | |||
const float & | fElement8, | |||
const float & | fElement12, | |||
const float & | fElement1, | |||
const float & | fElement5, | |||
const float & | fElement9, | |||
const float & | fElement13, | |||
const float & | fElement2, | |||
const float & | fElement6, | |||
const float & | fElement10, | |||
const float & | fElement14, | |||
const float & | fElement3, | |||
const float & | fElement7, | |||
const float & | fElement11, | |||
const float & | fElement15 | |||
) | [inline] |
VMatrix::VMatrix | ( | const VVector & | vecOne, | |
const VVector & | vecTwo, | |||
const VVector & | vecThree, | |||
const VVector & | vecFour = VVector(0.0f,0.0f,0.0f) | |||
) | [inline] |
Definition at line 32 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and m_vfElements.
VMatrix::VMatrix | ( | const float * | pElements | ) | [inline] |
VMatrix::VMatrix | ( | const float | vfElements[4][4] | ) | [inline] |
VMatrix::VMatrix | ( | const VQuaternion & | quaRotation | ) | [inline] |
VMatrix::VMatrix | ( | const VVector | axis, | |
float | angle | |||
) | [inline] |
Definition at line 58 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and m_vfElements.
void VMatrix::set | ( | const float * | pElements | ) | [inline] |
void VMatrix::clearMatrix | ( | ) | [inline] |
Definition at line 90 of file VMatrix.h.
References m_vfElements.
Referenced by VCamera::lookInDirection(), VFlowData::readGrid(), VCamera::updateProjMatrix(), and VCamera::updateViewMatrix().
const float* VMatrix::get | ( | ) | const [inline] |
void VMatrix::set | ( | const unsigned int | i, | |
const unsigned int | j, | |||
const float & | fValue | |||
) | [inline] |
const float& VMatrix::get | ( | const unsigned int | i, | |
const unsigned int | j | |||
) | const [inline] |
const float& VMatrix::get | ( | const unsigned int | i | ) | const [inline] |
void VMatrix::setRow | ( | const unsigned int | i, | |
const float | vfValues[4] | |||
) | [inline] |
void VMatrix::setColumn | ( | const unsigned int | i, | |
const float | vfValues[4] | |||
) | [inline] |
void VMatrix::setRow | ( | const unsigned int | i, | |
const VVector & | vecVector | |||
) | [inline] |
Definition at line 132 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and m_vfElements.
void VMatrix::setColumn | ( | const unsigned int | i, | |
const VVector & | vecVector | |||
) | [inline] |
Definition at line 139 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and m_vfElements.
float& VMatrix::operator() | ( | const unsigned int | i, | |
const unsigned int | j | |||
) | [inline] |
const float& VMatrix::operator() | ( | const unsigned int | i, | |
const unsigned int | j | |||
) | const [inline] |
void VMatrix::setTranslation | ( | const VVector & | vecTranslation | ) | [inline] |
Definition at line 156 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and m_vfElements.
const VVector VMatrix::getTranslation | ( | ) | const [inline] |
const VQuaternion VMatrix::getRotation | ( | ) | const [inline] |
Definition at line 169 of file VMatrix.h.
References m_vfElements.
Referenced by VCamera::lookInDirection().
Definition at line 220 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and VMatrix().
Referenced by translate().
void VMatrix::translate | ( | const VVector & | vecTranslation | ) | [inline] |
Definition at line 225 of file VMatrix.h.
References getTranslated().
Referenced by VCamera::lookInDirection(), VFlowData::readGrid(), and VCamera::updateViewMatrix().
Definition at line 230 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and VMatrix().
Referenced by scale().
void VMatrix::scale | ( | const VVector & | vecScale | ) | [inline] |
Definition at line 235 of file VMatrix.h.
References getScaled().
Referenced by VFlowData::readGrid().
VMatrix VMatrix::getRotated | ( | const VQuaternion & | quaRotation | ) | [inline] |
Definition at line 240 of file VMatrix.h.
References VQuaternion::getScalar(), VQuaternion::getVector(), VVector::getX(), VVector::getY(), VVector::getZ(), and VMatrix().
Referenced by rotate().
void VMatrix::rotate | ( | const VQuaternion & | quaRotation | ) | [inline] |
Definition at line 279 of file VMatrix.h.
References getRotated().
Referenced by VCamera::updateViewMatrix(), and VMatrix().
const VMatrix VMatrix::getInverse | ( | ) | const [inline] |
Definition at line 284 of file VMatrix.h.
References m_vfElements, and m_vfElements44.
Referenced by invert(), and VFlowData::readGrid().
void VMatrix::invert | ( | ) | [inline] |
const VMatrix VMatrix::getTransposed | ( | ) | const [inline] |
Definition at line 374 of file VMatrix.h.
References m_vfElements, and VMatrix().
Referenced by transpose().
void VMatrix::transpose | ( | ) | [inline] |
Definition at line 388 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and transform().
void VMatrix::transform | ( | float * | v, | |
float * | o | |||
) | [inline] |
Definition at line 409 of file VMatrix.h.
References m_vfElements.
Referenced by homogenTransform().
Definition at line 417 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and m_vfElements.
const bool VMatrix::operator== | ( | const VMatrix & | matOther | ) | const [inline] |
const bool VMatrix::operator!= | ( | const VMatrix & | matOther | ) | const [inline] |
Definition at line 471 of file VMatrix.h.
References VVector::getX(), VVector::getY(), VVector::getZ(), and m_vfElements.
float& VMatrix::operator[] | ( | unsigned int | n | ) | [inline] |
static VMatrix VMatrix::RotationX | ( | const float | angleRad | ) | [inline, static] |
static VMatrix VMatrix::RotationY | ( | const float | angleRad | ) | [inline, static] |
static VMatrix VMatrix::RotationZ | ( | const float | angleRad | ) | [inline, static] |
Construct a rotation matrix around the x axis.
Definition at line 524 of file VMatrix.h.
Referenced by VIcon::computeIcon().
float VMatrix::m_vfElements16[16] |
float VMatrix::m_vfElements44[4][4] |
union { ... } VMatrix::m_vfElements [private] |
Referenced by clearMatrix(), get(), getInverse(), getRotated(), getRotation(), getTranslation(), getTransposed(), operator *(), operator()(), operator==(), operator[](), set(), setColumn(), setRow(), setTranslation(), transform(), and VMatrix().