#include <matrix.h>
Public Member Functions | |
| Matrix () | |
| Default constructor. The matrix is initialized to identity. | |
| Matrix (float s) | |
| Constructor initializing all elements to the given value. | |
| virtual | ~Matrix () |
| Destructor. Does nothing. | |
| Matrix & | operator= (float s) |
| Assignment from a scalar value. | |
| float | operator() (int i, int j) const |
| Returns a copy of the element at position row,column (i,j). | |
| float & | operator() (int i, int j) |
| Returns a reference to the element at position row,column (i,j). | |
| Matrix & | zero () |
| Clear all elements to zero. | |
| Matrix & | identity () |
| Set matrix to identity. | |
| Matrix & | scale (float sx, float sy, float sz) |
| Setup scaling matrix. | |
| Matrix & | translation (float tx, float ty, float tz) |
| Setup translation matrix. | |
| Matrix & | rotX (float rx) |
| Setup rotation matrix around the x-axis, where the rotation angle is given in degrees. | |
| Matrix & | rotY (float ry) |
| Setup rotation matrix around the y-axis, where the rotation angle is given in degrees. | |
| Matrix & | rotZ (float rz) |
| Setup rotation matrix around the z-axis, where the rotation angle is given in degrees. | |
| Matrix | operator+ (const Matrix &m) const |
| Addition of two matrices. | |
| Matrix & | operator+= (const Matrix &m) |
| Addition of two matrices in place. | |
| Matrix | operator- (const Matrix &m) const |
| Subtraction of two matrices. | |
| Matrix & | operator-= (const Matrix &m) |
| Subtraction of two matrices in place. | |
| Matrix | operator * (float s) const |
| Multiplication of matrix by scalar. | |
| Matrix & | operator *= (float s) |
| Multiplication by scalar in place. | |
| Point | operator * (const Point &p) const |
| Matrix/point multiplication. The point is translated by the last column. | |
| Vector | operator * (const Vector &v) const |
| Matrix/vector multiplication. The vector is not translated by the last column. | |
| Matrix | operator * (const Matrix &m) const |
| Matrix multiplication. | |
| Matrix & | operator *= (const Matrix &m) |
| Matrix multiplication in place. | |
| float | determinant () const |
| Compute the determinant of the matrix. | |
| Matrix | inverse () const |
| Compute the inverse of the matrix. | |
Protected Attributes | |
| float | e [16] |
| The matrix elements. | |
Friends | |
| Matrix | operator * (float s, const Matrix &m) |
| Multiplication of sclar by matrix. | |
| std::ostream & | operator<< (std::ostream &os, const Matrix &A) |
| Write matrix elements to an output stream. | |
1.4.4