|
| Matrix () noexcept=default |
| Constructor - initializes all components to zero.
|
|
| Matrix (const Matrix &) noexcept=default |
|
| Matrix (const Vector &a, const Vector &b, const Vector &c) noexcept |
|
| Matrix (float value) noexcept |
| Constructor to diagonal matrix.
|
|
| Matrix (Matrix &&) noexcept=default |
|
| Matrix (Vector diagonal) noexcept |
| Constructor to diagonal matrix.
|
|
void | addDiagonal (const Vector &a) noexcept |
|
void | addTranspose (const Matrix &b) noexcept |
|
void | makeDiagonal (const Vector &a) noexcept |
|
void | makeIdentity (void) noexcept |
| Make the matrix the identity matrix.
|
|
bool | makeInverse (void) noexcept |
|
void | makeOrthogonal (void) noexcept |
|
void | makeOrthonormal (void) noexcept |
|
void | makeOuterProduct (const Vector &a, const Vector &b) noexcept |
|
void | makeTranspose (void) noexcept |
| Make the matrix to be the transpose of its currrent value.
|
|
void | makeZero (void) noexcept |
| Make the matrix the zero matrix (all elements are zeroes).
|
|
void | operator*= (float x) noexcept |
| Multiply all elements in the matrix by the given number.
|
|
void | operator+= (const Matrix &m) noexcept |
|
void | operator-= (const Matrix &m) noexcept |
|
void | operator/= (float x) noexcept |
| Divide all elements in the matrix by the given number. Does not perform a check for divide by zero.
|
|
Matrix & | operator= (const Matrix &) noexcept=default |
|
Matrix & | operator= (Matrix &&) noexcept=default |
|
const Vector & | operator[] (const int index) const noexcept |
| Return the i-th column of the matrix as a const object (i=0,1,2).
|
|
Vector & | operator[] (const int index) noexcept |
| Return the i-th column of the matrix (i=0,1,2).
|
|
void | rotate (const Vector &axis) noexcept |
| Applies a rotation along the given axis. The length of the axis is the tangent of the angle of rotation.
|
|
void | set (const Matrix &other) noexcept |
|
void | set (const Vector &a, const Vector &b, const Vector &c) noexcept |
|
void | set (float value) noexcept |
| Make diagonal matrix.
|
|
void | setCol (const int i, const Vector &a) noexcept |
|
void | setRow (const int i, const Vector &a) noexcept |
|
std::string | toString () const |
|
|
(Note that these are not member functions.)
|
Matrix | inverse (const Matrix &m) noexcept |
|
Matrix | makeRotationMatrixX (float xrot) noexcept |
|
Matrix | makeRotationMatrixY (float yrot) noexcept |
|
Matrix | makeRotationMatrixZ (float zrot) noexcept |
|
Matrix | normalize (const Matrix &m) noexcept |
|
Matrix | noScale (const Matrix &m) noexcept |
|
bool | operator!= (const Matrix &a, const Matrix &b) noexcept |
|
Matrix | operator* (const Matrix &a, const Matrix &b) noexcept |
|
Vector | operator* (const Matrix &m, const Vector &a) noexcept |
|
Matrix | operator* (const Matrix &m, float x) noexcept |
|
Vector | operator* (const Vector &a, const Matrix &m) noexcept |
|
Matrix | operator* (float x, const Matrix &m) noexcept |
|
Matrix | operator+ (const Matrix &a, const Matrix &b) noexcept |
|
Matrix | operator- (const Matrix &a) noexcept |
|
Matrix | operator- (const Matrix &a, const Matrix &b) noexcept |
|
Matrix | operator/ (const Matrix &m, float x) noexcept |
|
float | operator/ (float x, const Matrix &m) noexcept |
|
bool | operator== (const Matrix &a, const Matrix &b) noexcept |
|
Matrix | operator^ (const Matrix &m, const Vector &a) noexcept |
|
Matrix | operator^ (const Vector &a, const Matrix &m) noexcept |
|
Matrix | rotate (const Matrix &m, const Vector &axis) noexcept |
|
Vector | rotationAngles (const Matrix &m) noexcept |
|
Vector | scale (const Matrix &m) noexcept |
|
Matrix | transpose (const Matrix &m) noexcept |
|
3x3 column-major matrix, float32