VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Attributes | Private Attributes
makVrv::DtMatrix4< T > Class Template Reference

4 dimensional matrix More...

Public Member Functions

 DtMatrix4 ()
 CTOR.
 DtMatrix4 (const T rhs[4][4])
 CTOR.
 DtMatrix4 (const T rhs[16])
 CTOR.
 DtMatrix4 (T m00, T m01, T m02, T m03, T m10, T m11, T m12, T m13, T m20, T m21, T m22, T m23, T m30, T m31, T m32, T m33)
 CTOR.
 DtMatrix4 (const DtMatrix3< T > &rhs)
 CTOR Creates a standard 4x4 transformation matrix with a zero translation part from a rotation/scaling 3x3 matrix.
virtual ~DtMatrix4 ()
 DTOR.
void operator= (const DtMatrix3< T > &rhs)
 Assignment operator.
DtMatrix4 operator* (const DtMatrix4 &rhs) const
 Multiply 2 matrices. Returns this*rhs.
DtVector4< T > operator* (const DtVector4< T > &rhs) const
 Multiply matrix with vector. Returns this*rhs.
void setZero (void)
 Set all values to zero.
void setIdentity (void)
 Set matrix to identity matrix.
DtMatrix4 getTranspose (void) const
 Get the transpose of this matrix.
bool isEqual (const DtMatrix4 &rhs, T tolerance) const
 Check whether this matrix is equivalent to rhs within tolerance.
bool isIdentity (T tolerance=std::numeric_limits< T >::epsilon()) const
DtMatrix4 convert_depth_gl_to_dx () const
const T * operator[] (size_t iRow) const
T * operator[] (size_t iRow)
const void * ptr (void) const
bool isAffine (void) const
 Return whether the last row is (0,0,0,1);.
DtVector3< T > transformAffine (const DtVector3< T > &v) const
DtVector4< T > transformAffine (const DtVector4< T > &v) const
DtMatrix4< T > getInverse (void) const
 Get the inverse of this matrix.
DtMatrix4< T > getInverseAffine (void) const
 Get the inverse of this matrix. This matrix must be affine to.

Static Public Attributes

static DtMatrix4 theIdentityMatrix

Private Attributes

union {
   T   _m [16]
   T   m [4][4]
}; 

Detailed Description

template<class T>
class makVrv::DtMatrix4< T >

4 dimensional matrix

Constructor & Destructor Documentation

template<class T >
makVrv::DtMatrix4< T >::DtMatrix4 ( )

CTOR.

template<class T >
makVrv::DtMatrix4< T >::DtMatrix4 ( const T  rhs[4][4])

CTOR.

template<class T >
makVrv::DtMatrix4< T >::DtMatrix4 ( const T  rhs[16])

CTOR.

template<class T >
makVrv::DtMatrix4< T >::DtMatrix4 ( m00,
m01,
m02,
m03,
m10,
m11,
m12,
m13,
m20,
m21,
m22,
m23,
m30,
m31,
m32,
m33 
)

CTOR.

template<class T >
makVrv::DtMatrix4< T >::DtMatrix4 ( const DtMatrix3< T > &  rhs)

CTOR Creates a standard 4x4 transformation matrix with a zero translation part from a rotation/scaling 3x3 matrix.

template<class T >
makVrv::DtMatrix4< T >::~DtMatrix4 ( )
virtual

DTOR.

Member Function Documentation

template<class T >
void makVrv::DtMatrix4< T >::operator= ( const DtMatrix3< T > &  rhs)

Assignment operator.

template<class T>
DtMatrix4 makVrv::DtMatrix4< T >::operator* ( const DtMatrix4< T > &  rhs) const

Multiply 2 matrices. Returns this*rhs.

template<class T >
DtVector4< T > makVrv::DtMatrix4< T >::operator* ( const DtVector4< T > &  rhs) const
template<class T >
void makVrv::DtMatrix4< T >::setZero ( void  )

Set all values to zero.

Referenced by makVrv::DtMatrix4< T >::setIdentity().

template<class T >
void makVrv::DtMatrix4< T >::setIdentity ( void  )
template<class T >
DtMatrix4< T > makVrv::DtMatrix4< T >::getTranspose ( void  ) const

Get the transpose of this matrix.

template<class T>
bool makVrv::DtMatrix4< T >::isEqual ( const DtMatrix4< T > &  rhs,
tolerance 
) const

Check whether this matrix is equivalent to rhs within tolerance.

References makVrv::DtMath::isEqual().

template<class T >
bool makVrv::DtMatrix4< T >::isIdentity ( tolerance = std::numeric_limits<T>::epsilon()) const
template<class T >
DtMatrix4< T > makVrv::DtMatrix4< T >::convert_depth_gl_to_dx ( ) const
template<class T >
const T * makVrv::DtMatrix4< T >::operator[] ( size_t  iRow) const
template<class T >
T * makVrv::DtMatrix4< T >::operator[] ( size_t  iRow)
template<class T >
const void * makVrv::DtMatrix4< T >::ptr ( void  ) const
template<class T >
bool makVrv::DtMatrix4< T >::isAffine ( void  ) const

Return whether the last row is (0,0,0,1);.

template<class T >
DtVector3< T > makVrv::DtMatrix4< T >::transformAffine ( const DtVector3< T > &  v) const
template<class T >
DtVector4< T > makVrv::DtMatrix4< T >::transformAffine ( const DtVector4< T > &  v) const
template<class T >
DtMatrix4< T > makVrv::DtMatrix4< T >::getInverse ( void  ) const

Get the inverse of this matrix.

template<class T >
DtMatrix4< T > makVrv::DtMatrix4< T >::getInverseAffine ( void  ) const

Get the inverse of this matrix. This matrix must be affine to.

References ASSERT_PREDICATE.

Member Data Documentation

template<class T>
DtMatrix4< T > makVrv::DtMatrix4< T >::theIdentityMatrix
static
Initial value:
DtMatrix4<T>(1,0,0,0
, 0,1,0,0
, 0,0,1,0
, 0,0,0,1)
template<class T>
T makVrv::DtMatrix4< T >::_m[16]
template<class T>
T makVrv::DtMatrix4< T >::m[4][4]
union { ... }

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

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)