home | project pages | download | documentation | doxygen | contact |
#include <Matrix.h>
An 4 x 4 transformation matrix to scale, shear, rotate and translate homogeious vectors and points.
Public Member Functions | |
TMatrix (void) | |
Construct an identity matrix. | |
TMatrix | operator* (const T &other) const |
Multiply the matrix by a scalar. | |
TMatrix | operator* (const TMatrix &other) const |
Cross product of two matrices. | |
Vector | operator* (const Vector &other) const |
Transform a Vector by this matrix. | |
IntervalVector | operator* (const IntervalVector &other) const |
Transform an IntervalVector by this matrix. | |
TMatrix | invert (void) const |
Calculate the inversion of this matrix. | |
TMatrix | translate (const Vector &v) const |
Add a translation operation to this matrix. | |
TMatrix | scale (const Vector &v) const |
Add a scale operation to this matrix. | |
TMatrix | rotate (const TVector< T > &v, double _angle) const |
Add a rotation operation to this matrix. | |
Public Attributes | |
T | m [4][4] |
the 4 x 4 matrix. |
camvox::TMatrix< T >::TMatrix | ( | void | ) | [inline] |
Construct an identity matrix.
TMatrix camvox::TMatrix< T >::operator* | ( | const T & | other | ) | const [inline] |
Multiply the matrix by a scalar.
TMatrix camvox::TMatrix< T >::operator* | ( | const TMatrix< T > & | other | ) | const [inline] |
Cross product of two matrices.
Vector camvox::TMatrix< T >::operator* | ( | const Vector & | other | ) | const [inline] |
Transform a Vector by this matrix.
IntervalVector camvox::TMatrix< T >::operator* | ( | const IntervalVector & | other | ) | const [inline] |
Transform an IntervalVector by this matrix.
An IntervalVector is like an axis-aligned bounded box.
TMatrix camvox::TMatrix< T >::invert | ( | void | ) | const [inline] |
Calculate the inversion of this matrix.
TMatrix camvox::TMatrix< T >::translate | ( | const Vector & | v | ) | const [inline] |
Add a translation operation to this matrix.
v | Translation vector |
TMatrix camvox::TMatrix< T >::scale | ( | const Vector & | v | ) | const [inline] |
Add a scale operation to this matrix.
v | Vector with scale values along each axis. |
TMatrix camvox::TMatrix< T >::rotate | ( | const TVector< T > & | v, | |
double | _angle | |||
) | const [inline] |
Add a rotation operation to this matrix.
The rotation is around a vector oriented at the origin. The rotation is counter-clockwise if one looks from the origin along the vector.
v | The rotation is along this vector. | |
angle | The rotation is radians around the vector. |
T camvox::TMatrix< T >::m[4][4] |
the 4 x 4 matrix.