latest version v1.9 - last update 10 Apr 2010 |
Homogeneous matrix in 3D projective space. More...
#include <ltiHTypes.h>
Public Member Functions | |
hMatrix3D () | |
hMatrix3D (const hMatrix3D< T > &other) | |
hMatrix3D (const hMatrix2D< T > &other) | |
hMatrix3D (const matrix< T > &other) | |
virtual | ~hMatrix3D () |
hMatrix3D< T > & | multiply (const hMatrix3D< T > &other) |
hMatrix3D< T > & | multiply (const hMatrix3D< T > &a, const hMatrix3D< T > &b) |
hMatrix3D< T > | operator* (const hMatrix3D< T > &other) |
hMatrix3D< T > & | operator*= (const hMatrix3D< T > &other) |
hPoint3D< T > & | multiply (const hPoint3D< T > &other, hPoint3D< T > &result) const |
hPoint3D< T > | operator* (const hPoint3D< T > &p) const |
tpoint3D< T > & | multiply (const tpoint3D< T > &other, tpoint3D< T > &result) const |
tpoint3D< T > | operator* (const tpoint3D< T > &p) const |
hPoint2D< T > & | multiply (const hPoint2D< T > &other, hPoint2D< T > &result) const |
hPoint2D< T > | operator* (const hPoint2D< T > &p) const |
tpoint< T > & | multiply (const tpoint< T > &other, tpoint< T > &result) const |
tpoint< T > | operator* (const tpoint< T > &p) const |
Homogeneous matrix in 3D projective space.
The three-dimensional transformations are represented by 4x4 matrices of the form:
where the terms represent a rotation and scaling and the terms the translation.
lti::hMatrix3D< T >::hMatrix3D | ( | ) |
default constructor
lti::hMatrix3D< T >::hMatrix3D | ( | const hMatrix3D< T > & | other | ) |
copy constructor
lti::hMatrix3D< T >::hMatrix3D | ( | const hMatrix2D< T > & | other | ) |
copy constructor
lti::hMatrix3D< T >::hMatrix3D | ( | const matrix< T > & | other | ) |
copy constructor
virtual lti::hMatrix3D< T >::~hMatrix3D | ( | ) | [virtual] |
destructor
tpoint<T>& lti::hMatrix3D< T >::multiply | ( | const tpoint< T > & | other, | |
tpoint< T > & | result | |||
) | const |
multiply with a point (assume z=0) and leave the result in the second parameters.
hPoint2D<T>& lti::hMatrix3D< T >::multiply | ( | const hPoint2D< T > & | other, | |
hPoint2D< T > & | result | |||
) | const |
multiply with a point (assume z=0) and leave the result in the second parameter.
Return a reference to the second parameters
tpoint3D<T>& lti::hMatrix3D< T >::multiply | ( | const tpoint3D< T > & | other, | |
tpoint3D< T > & | result | |||
) | const |
multiply with a point and leave the result in the second parameters.
Return a reference to the second parameters
hPoint3D<T>& lti::hMatrix3D< T >::multiply | ( | const hPoint3D< T > & | other, | |
hPoint3D< T > & | result | |||
) | const [inline] |
multiply with a point and leave the result in the second parameters.
Return a reference to the second parameters
Reimplemented from lti::hMatrix< T, hPoint3D< T > >.
hMatrix3D<T>& lti::hMatrix3D< T >::multiply | ( | const hMatrix3D< T > & | a, | |
const hMatrix3D< T > & | b | |||
) | [inline] |
multiply the matrices a and b and leave the result here.
hMatrix3D<T>& lti::hMatrix3D< T >::multiply | ( | const hMatrix3D< T > & | other | ) | [inline] |
multiply this matrix with another homogeneous matrix and leave the result here.
Referenced by lti::hMatrix3D< float >::multiply(), lti::hMatrix3D< float >::operator*(), and lti::hMatrix3D< float >::operator*=().
tpoint<T> lti::hMatrix3D< T >::operator* | ( | const tpoint< T > & | p | ) | const [inline] |
multiply with a point (assume z=0)
hPoint2D<T> lti::hMatrix3D< T >::operator* | ( | const hPoint2D< T > & | p | ) | const [inline] |
multiply with a point (assume z=0).
tpoint3D<T> lti::hMatrix3D< T >::operator* | ( | const tpoint3D< T > & | p | ) | const [inline] |
multiply with a point
hPoint3D<T> lti::hMatrix3D< T >::operator* | ( | const hPoint3D< T > & | p | ) | const [inline] |
multiply with a point
Reimplemented from lti::hMatrix< T, hPoint3D< T > >.
hMatrix3D<T> lti::hMatrix3D< T >::operator* | ( | const hMatrix3D< T > & | other | ) | [inline] |
hMatrix3D<T>& lti::hMatrix3D< T >::operator*= | ( | const hMatrix3D< T > & | other | ) | [inline] |
alias for multiply