#include <Math/Matrix.h>
Public Member Functions | |
| Matrix (void) | |
| Default constructor. Do nothing. | |
| Matrix (const double m00, const double m01, const double m02, const double m03, const double m10, const double m11, const double m12, const double m13, const double m20, const double m21, const double m22, const double m23, const double m30, const double m31, const double m32, const double m33) | |
| Construction from values. | |
| Matrix (const double *a) | |
| Construction from array of doubles. | |
| Matrix & | operator= (const double *a) |
| Assignment operator for array of doubles. | |
| const double & | operator() (const uint i, const uint j) const |
| Individual member access. returns const. | |
| double & | m (const uint i, const uint j) |
| Non-const member access. | |
| Matrix & | Transpose (void) |
| Matrix | operator * (const double s) const |
| Matrix & | operator *= (const double s) |
| scaler multiplication, same as operator* | |
| Matrix | operator/ (const double s) const |
| Scalar division. | |
| Matrix & | operator/= (const double s) |
| Scalar division. also sets this matrix to the value. | |
| Matrix | operator+ (const Matrix &a) const |
| Matrix addition. | |
| Matrix & | operator+= (const Matrix &a) |
| Matrix addition. | |
| Matrix | operator- (const Matrix &a) const |
| Matrix subtraction. | |
| Matrix & | operator-= (const Matrix &a) |
| Matrix subtraction. | |
| Matrix | operator * (const Matrix &a) const |
| Matrix multiplication. calculates the cross product. | |
| Matrix & | operator *= (const Matrix &a) |
| Matrix multiplication. | |
| Vector | operator * (const Vector &v) const |
| Vector multiplication. same as matrix multiplication, but for a 1x4 matrix. | |
| void | Translation (const Vector &t) |
| void | Scaling (const Vector &s) |
| Creates a transformation matrix representing a scaling by the vector 's', the result's are stored in "this". | |
| void | Rotation (const double r, const Vector &a) |
| Creates a transformation matrix representing a rotation by 'r' radians about the axis vector 'a'. The results are stored in "this". | |
| std::string | String (void) const |
| Conversion to string (for debugging). | |
Static Public Member Functions | |
| void | Transform2D (const Vector &normal, Matrix &to_plane, Matrix &to_world) |
| given a normal, produce two transformation matrices from the world axes | |
Static Public Attributes | |
| const Matrix | Identity |
| The identity matrix. Were going ot need this alot anyway, so we define it here. | |
The primary purpose of this is obviously to perform transformation on three-dimensional points (orvectors).
The default copy constructor and assignment operator are fine. Due to the way our data is stored.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Construction from values.
|
|
|
Construction from array of doubles.
|
|
||||||||||||
|
Non-const member access.
|
|
|
Vector multiplication. same as matrix multiplication, but for a 1x4 matrix.
|
|
|
Matrix multiplication. calculates the cross product.
|
|
|
Matrix multiplication.
|
|
|
scaler multiplication, same as operator*
|
|
||||||||||||
|
Individual member access. returns const.
|
|
|
Matrix addition.
|
|
|
Matrix addition.
|
|
|
Matrix subtraction.
|
|
|
Matrix subtraction.
|
|
|
Scalar division.
|
|
|
Scalar division. also sets this matrix to the value.
|
|
|
Assignment operator for array of doubles.
|
|
||||||||||||
|
Creates a transformation matrix representing a rotation by 'r' radians about the axis vector 'a'. The results are stored in "this".
|
|
|
Creates a transformation matrix representing a scaling by the vector 's', the result's are stored in "this".
|
|
|
Conversion to string (for debugging).
|
|
||||||||||||||||
|
given a normal, produce two transformation matrices from the world axes
|
1.3.8-20040913