VMatrix Class Reference

#include <VMatrix.h>

List of all members.

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 VMatrixoperator *= (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


Detailed Description

Definition at line 11 of file VMatrix.h.


Constructor & Destructor Documentation

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]

Definition at line 21 of file VMatrix.h.

References m_vfElements.

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]

Definition at line 41 of file VMatrix.h.

References m_vfElements.

VMatrix::VMatrix ( const float  vfElements[4][4]  )  [inline]

Definition at line 46 of file VMatrix.h.

References m_vfElements.

VMatrix::VMatrix ( const VQuaternion quaRotation  )  [inline]

Definition at line 51 of file VMatrix.h.

References m_vfElements, and rotate().

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.

VMatrix::~VMatrix (  )  [inline]

Definition at line 81 of file VMatrix.h.


Member Function Documentation

void VMatrix::set ( const float *  pElements  )  [inline]

Definition at line 85 of file VMatrix.h.

References m_vfElements.

Referenced by operator>>().

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]

Definition at line 96 of file VMatrix.h.

References m_vfElements.

Referenced by operator<<().

void VMatrix::set ( const unsigned int  i,
const unsigned int  j,
const float &  fValue 
) [inline]

Definition at line 101 of file VMatrix.h.

References m_vfElements.

const float& VMatrix::get ( const unsigned int  i,
const unsigned int  j 
) const [inline]

Definition at line 106 of file VMatrix.h.

References m_vfElements.

const float& VMatrix::get ( const unsigned int  i  )  const [inline]

Definition at line 111 of file VMatrix.h.

References m_vfElements.

void VMatrix::setRow ( const unsigned int  i,
const float  vfValues[4] 
) [inline]

Definition at line 116 of file VMatrix.h.

References m_vfElements.

void VMatrix::setColumn ( const unsigned int  i,
const float  vfValues[4] 
) [inline]

Definition at line 124 of file VMatrix.h.

References m_vfElements.

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]

Definition at line 146 of file VMatrix.h.

References m_vfElements.

const float& VMatrix::operator() ( const unsigned int  i,
const unsigned int  j 
) const [inline]

Definition at line 151 of file VMatrix.h.

References m_vfElements.

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]

Definition at line 164 of file VMatrix.h.

References m_vfElements.

const VQuaternion VMatrix::getRotation (  )  const [inline]

Definition at line 169 of file VMatrix.h.

References m_vfElements.

Referenced by VCamera::lookInDirection().

const VMatrix VMatrix::getTranslated ( const VVector vecTranslation  )  const [inline]

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().

const VMatrix VMatrix::getScaled ( const VVector vecScale  )  const [inline]

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]

Definition at line 369 of file VMatrix.h.

References getInverse().

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 383 of file VMatrix.h.

References getTransposed().

VVector VMatrix::homogenTransform ( const VVector v  )  [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().

const VVector VMatrix::getRotated ( const VVector vecOther  )  const [inline]

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]

Definition at line 425 of file VMatrix.h.

References m_vfElements, and m_vfElements16.

const bool VMatrix::operator!= ( const VMatrix matOther  )  const [inline]

Definition at line 436 of file VMatrix.h.

const VMatrix VMatrix::operator * ( const VMatrix matOther  )  const [inline]

Definition at line 441 of file VMatrix.h.

References m_vfElements, m_vfElements16, and VMatrix().

const VMatrix& VMatrix::operator *= ( const VMatrix matOther  )  [inline]

Definition at line 465 of file VMatrix.h.

const VVector VMatrix::operator * ( const VVector vecOther  )  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]

Definition at line 480 of file VMatrix.h.

References m_vfElements.

static VMatrix VMatrix::RotationX ( const float  angleRad  )  [inline, static]

Construct a rotation matrix around the x axis.

Definition at line 486 of file VMatrix.h.

static VMatrix VMatrix::RotationY ( const float  angleRad  )  [inline, static]

Construct a rotation matrix around the x axis.

Definition at line 505 of file VMatrix.h.

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().


Member Data Documentation

float VMatrix::m_vfElements16[16]

Definition at line 546 of file VMatrix.h.

Referenced by operator *(), and operator==().

float VMatrix::m_vfElements44[4][4]

Definition at line 547 of file VMatrix.h.

Referenced by getInverse().

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().


The documentation for this class was generated from the following file:
Generated on Mon Jan 21 01:15:17 2008 for FlowVis by  doxygen 1.5.4