![]() |
VR-Forces Development_Version Class Documentation
|
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] | |
| }; | |
4 dimensional matrix
| makVrv::DtMatrix4< T >::DtMatrix4 | ( | ) |
CTOR.
| makVrv::DtMatrix4< T >::DtMatrix4 | ( | const T | rhs[4][4] | ) |
CTOR.
| makVrv::DtMatrix4< T >::DtMatrix4 | ( | const T | rhs[16] | ) |
CTOR.
| makVrv::DtMatrix4< T >::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.
| 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.
|
virtual |
DTOR.
| void makVrv::DtMatrix4< T >::operator= | ( | const DtMatrix3< T > & | rhs | ) |
Assignment operator.
| DtMatrix4 makVrv::DtMatrix4< T >::operator* | ( | const DtMatrix4< T > & | rhs | ) | const |
Multiply 2 matrices. Returns this*rhs.
| DtVector4< T > makVrv::DtMatrix4< T >::operator* | ( | const DtVector4< T > & | rhs | ) | const |
Multiply matrix with vector. Returns this*rhs.
References makVrv::DtMatrix4< T >::m, makVrv::DtVector4< T >::w, makVrv::DtVector4< T >::x, makVrv::DtVector4< T >::y, and makVrv::DtVector4< T >::z.
| void makVrv::DtMatrix4< T >::setZero | ( | void | ) |
Set all values to zero.
Referenced by makVrv::DtMatrix4< T >::setIdentity().
| void makVrv::DtMatrix4< T >::setIdentity | ( | void | ) |
Set matrix to identity matrix.
References makVrv::DtMatrix4< T >::setZero().
Referenced by makVrv::DtMatrix4< T >::isIdentity(), makVrv::DtMatrixUtils< T >::matrixRotationX(), makVrv::DtMatrixUtils< T >::matrixRotationY(), and makVrv::DtMatrixUtils< T >::matrixRotationZ().
| DtMatrix4< T > makVrv::DtMatrix4< T >::getTranspose | ( | void | ) | const |
Get the transpose of this matrix.
| bool makVrv::DtMatrix4< T >::isEqual | ( | const DtMatrix4< T > & | rhs, |
| T | tolerance | ||
| ) | const |
Check whether this matrix is equivalent to rhs within tolerance.
References makVrv::DtMath::isEqual().
| bool makVrv::DtMatrix4< T >::isIdentity | ( | T | tolerance = std::numeric_limits<T>::epsilon() | ) | const |
References makVrv::DtMatrix4< T >::setIdentity().
| DtMatrix4< T > makVrv::DtMatrix4< T >::convert_depth_gl_to_dx | ( | ) | const |
| const T * makVrv::DtMatrix4< T >::operator[] | ( | size_t | iRow | ) | const |
References ASSERT_PREDICATE_RETURN_ZERO.
| T * makVrv::DtMatrix4< T >::operator[] | ( | size_t | iRow | ) |
References ASSERT_PREDICATE_RETURN_ZERO.
| const void * makVrv::DtMatrix4< T >::ptr | ( | void | ) | const |
| bool makVrv::DtMatrix4< T >::isAffine | ( | void | ) | const |
Return whether the last row is (0,0,0,1);.
| DtVector3< T > makVrv::DtMatrix4< T >::transformAffine | ( | const DtVector3< T > & | v | ) | const |
| DtVector4< T > makVrv::DtMatrix4< T >::transformAffine | ( | const DtVector4< T > & | v | ) | const |
| DtMatrix4< T > makVrv::DtMatrix4< T >::getInverse | ( | void | ) | const |
Get the inverse of this matrix.
| DtMatrix4< T > makVrv::DtMatrix4< T >::getInverseAffine | ( | void | ) | const |
Get the inverse of this matrix. This matrix must be affine to.
References ASSERT_PREDICATE.
|
static |
| T makVrv::DtMatrix4< T >::_m[16] |
| T makVrv::DtMatrix4< T >::m[4][4] |
Referenced by makVrv::DtMatrix4< T >::operator*().
| union { ... } |