Public Member Functions | |
Matrix4D (void) | |
Matrix4D (const Matrix3D &m) | |
Matrix4D (const Matrix3D &m, const Point3D &p) | |
double & | operator() (int col, int row) |
double & | index (int col, int row) |
double | det (void) const |
Matrix4D | operator- (void) const |
Matrix4D | mult (const Matrix4D &m) const |
Matrix4D | operator * (const Matrix4D &m) const |
Matrix4D & | operator *= (const Matrix4D &m) |
Matrix4D | add (const Matrix4D &m) const |
Matrix4D | operator+ (const Matrix4D &m) const |
Matrix4D & | operator+= (const Matrix4D &m) |
Matrix4D | subtract (const Matrix4D &m) const |
Matrix4D | operator- (const Matrix4D &m) const |
Matrix4D & | operator-= (const Matrix4D &m) |
Matrix4D | mult (double f) const |
Matrix4D | operator * (double f) const |
Matrix4D & | operator *= (double f) |
Matrix4D | div (double f) const |
Matrix4D | operator/ (double f) const |
Matrix4D & | operator/= (double f) |
Matrix4D | transpose (void) const |
Matrix4D | invert (void) const |
Point3D | operator * (const Point3D &p) const |
Point3D | multPosition (const Point3D &position) const |
Point3D | multDirection (const Point3D &direction) const |
Point3D | multNormal (const Point3D &normal) const |
Ray3D | mult (const Ray3D &ray) const |
Ray3D | operator * (const Ray3D &ray) const |
Point3D | toEuler (void) const |
double | squareNorm (void) const |
Static Public Member Functions | |
static int | Invert (const Matrix4D &in, Matrix4D &out) |
static Matrix4D | IdentityMatrix (void) |
static double | SquareL2Difference (const Matrix4D &m1, const Matrix4D &m2) |
Public Attributes | |
double | m [4][4] |
|
This constructor generates an identity matrix |
|
This constructor initializes the upper 3x3 entries of the matrix |
|
This constructor initializes the upper 3x3 entries of the matrix with the matrix and sets the last colume to the translation |
|
This method adds two matrices and returns the sum. |
|
This method returns the determinant of the matrix. |
|
This method divides the entries of a matrix and returns a new matrix. |
|
This static method returns the identity matrix. |
|
This method returns the entry of the matrix in the col-th column and the row-th row. |
|
This static method tries to invert the input matrix and write it out into the output. A value of 0 is returned if the matrix has 0 determinant. |
|
This method returns the inverse of a matrix. (Note that it does not change the entries of the current matrix.) |
|
This method applies the projective transformation to a ray. |
|
This method scales the entries of a matrix and returns a new matrix. |
|
This method multiplies two matrices and returns the product. |
|
This method applies the linear part of the transformation to a 3D point. |
|
This method applies the linear part of the transformatoin to a normal, (i.e. multiplying by the inverse transpose). |
|
This method applies the full projective transformation to a 3D point. |
|
This method applies the projective transformation to a ray. |
|
This method applies the full projective transformation to a 3D point. |
|
This method scales the entries of a matrix and returns a new matrix. |
|
This method multiplies two matrices and returns the product. |
|
This method scales the entries of the current matrix. |
|
This method multiplies the current matrix (on the right) by the input matrix.. |
|
This method returns the entry of the matrix in the col-th column and the row-th row. |
|
This method adds two matrices and returns the sum. |
|
This method adds the input matrix to the current matrix. |
|
This method subtracts two matrices and returns the difference. |
|
This method returns the negative of a matrix |
|
This method subtracts the input matrix from the current matrix. |
|
This method divides the entries of a matrix and returns a new matrix. |
|
This method divides the entries of the current matrix. |
|
This method returns sum of the squares of the entries of the difference matrix. |
|
This method returns the sum of the squares of the matrix entries |
|
This method subtracts two matrices and returns the difference. |
|
This method returns the Euler Angles of a rotation matrix |
|
This method returns the transpose of a matrix. (Note that it does not change the entries of the current matrix.) |
|
The actual matrix entries |