vrecko
virtual reality framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
gmMatrix4 Class Reference

#include <gm_mat4.h>

Public Member Functions

 gmMatrix4 ()
 
 gmMatrix4 (const gmMatrix4 &)
 
 gmMatrix4 (double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double)
 
double * operator[] (int)
 
const double * operator[] (int) const
 
gmMatrix4assign (double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double)
 
gmMatrix4operator= (const gmMatrix4 &)
 
gmMatrix4operator+= (const gmMatrix4 &)
 
gmMatrix4operator-= (const gmMatrix4 &)
 
gmMatrix4operator*= (const gmMatrix4 &)
 
gmMatrix4operator*= (double)
 
gmMatrix4operator/= (double)
 
gmMatrix4 operator+ (const gmMatrix4 &) const
 
gmMatrix4 operator- (const gmMatrix4 &) const
 
gmMatrix4 operator- () const
 
gmMatrix4 operator* (const gmMatrix4 &) const
 
gmMatrix4 operator* (double) const
 
gmMatrix4 operator/ (double) const
 
bool operator== (const gmMatrix4 &) const
 
bool operator!= (const gmMatrix4 &) const
 
gmVector4 operator* (const gmVector4 &) const
 
gmVector3 mixed_mult (gmVector3 &, const double &)
 
gmMatrix4 inverse () const
 
gmMatrix4 transpose () const
 
gmMatrix4 adjoint () const
 
double determinant () const
 
bool isSingular () const
 
gmVector3 transform (const gmVector3 &) const
 
void copyTo (float[4][4]) const
 
void copyTo (double[4][4]) const
 

Static Public Member Functions

static gmMatrix4 identity ()
 
static gmMatrix4 rotate (double, const gmVector3 &axis)
 
static gmMatrix4 scale (double, double, double)
 
static gmMatrix4 translate (double, double, double)
 
static gmMatrix4 arb_rotate (gmVector3 &, double)
 
static gmMatrix4 bezierBasis ()
 
static gmMatrix4 bsplineBasis ()
 
static gmMatrix4 catmullromBasis ()
 
static gmMatrix4 hermiteBasis ()
 
static gmMatrix4 tensedBSplineBasis (double)
 
static gmMatrix4 cardinalBasis (double)
 
static gmMatrix4 tauBasis (double, double)
 
static gmMatrix4 betaSplineBasis (double, double)
 

Protected Attributes

double m_ [4][4]
 

Friends

gmMatrix4 operator* (double, const gmMatrix4 &)
 
gmVector4 operator* (const gmVector4 &, const gmMatrix4 &)
 
ostream & operator<< (ostream &, const gmMatrix4 &)
 

Constructor & Destructor Documentation

gmMatrix4::gmMatrix4 ( )
gmMatrix4::gmMatrix4 ( const gmMatrix4 M)
gmMatrix4::gmMatrix4 ( double  a00,
double  a01,
double  a02,
double  a03,
double  a10,
double  a11,
double  a12,
double  a13,
double  a20,
double  a21,
double  a22,
double  a23,
double  a30,
double  a31,
double  a32,
double  a33 
)

Member Function Documentation

gmMatrix4 gmMatrix4::adjoint ( ) const
gmMatrix4 gmMatrix4::arb_rotate ( gmVector3 v,
double  angle 
)
static
gmMatrix4 & gmMatrix4::assign ( double  a00,
double  a01,
double  a02,
double  a03,
double  a10,
double  a11,
double  a12,
double  a13,
double  a20,
double  a21,
double  a22,
double  a23,
double  a30,
double  a31,
double  a32,
double  a33 
)
gmMatrix4 gmMatrix4::betaSplineBasis ( double  bias,
double  tension 
)
static
gmMatrix4 gmMatrix4::bezierBasis ( )
static
gmMatrix4 gmMatrix4::bsplineBasis ( )
static
gmMatrix4 gmMatrix4::cardinalBasis ( double  tension)
static
gmMatrix4 gmMatrix4::catmullromBasis ( )
static
void gmMatrix4::copyTo ( float  f[4][4]) const
inline
void gmMatrix4::copyTo ( double  f[4][4]) const
inline
double gmMatrix4::determinant ( ) const
gmMatrix4 gmMatrix4::hermiteBasis ( )
static
gmMatrix4 gmMatrix4::identity ( )
static
gmMatrix4 gmMatrix4::inverse ( ) const
bool gmMatrix4::isSingular ( ) const
gmVector3 gmMatrix4::mixed_mult ( gmVector3 v,
const double &  d 
)
bool gmMatrix4::operator!= ( const gmMatrix4 M) const
gmMatrix4 gmMatrix4::operator* ( const gmMatrix4 M) const
gmMatrix4 gmMatrix4::operator* ( double  d) const
gmVector4 gmMatrix4::operator* ( const gmVector4 v) const
gmMatrix4 & gmMatrix4::operator*= ( const gmMatrix4 M)
gmMatrix4 & gmMatrix4::operator*= ( double  d)
gmMatrix4 gmMatrix4::operator+ ( const gmMatrix4 M) const
gmMatrix4 & gmMatrix4::operator+= ( const gmMatrix4 M)
gmMatrix4 gmMatrix4::operator- ( const gmMatrix4 M) const
gmMatrix4 gmMatrix4::operator- ( ) const
gmMatrix4 & gmMatrix4::operator-= ( const gmMatrix4 M)
gmMatrix4 gmMatrix4::operator/ ( double  d) const
gmMatrix4 & gmMatrix4::operator/= ( double  d)
gmMatrix4 & gmMatrix4::operator= ( const gmMatrix4 M)
bool gmMatrix4::operator== ( const gmMatrix4 M) const
double * gmMatrix4::operator[] ( int  i)
inline
const double * gmMatrix4::operator[] ( int  i) const
inline
gmMatrix4 gmMatrix4::rotate ( double  angle,
const gmVector3 axis 
)
static
gmMatrix4 gmMatrix4::scale ( double  x,
double  y,
double  z 
)
static
gmMatrix4 gmMatrix4::tauBasis ( double  bias,
double  tension 
)
static
gmMatrix4 gmMatrix4::tensedBSplineBasis ( double  tension)
static
gmVector3 gmMatrix4::transform ( const gmVector3 v) const
gmMatrix4 gmMatrix4::translate ( double  x,
double  y,
double  z 
)
static
gmMatrix4 gmMatrix4::transpose ( ) const

Friends And Related Function Documentation

gmMatrix4 operator* ( double  d,
const gmMatrix4 M 
)
friend
gmVector4 operator* ( const gmVector4 v,
const gmMatrix4 M 
)
friend
ostream& operator<< ( ostream &  os,
const gmMatrix4 M 
)
friend

Member Data Documentation

double gmMatrix4::m_[4][4]
protected

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