|
| Matrix3x3 () |
|
| Matrix3x3 (Float value) |
| Initialize the matrix with constant entries. More...
|
|
| Matrix3x3 (const Float _m[3][3]) |
| Initialize the matrix from a given 3x3 array. More...
|
|
| Matrix3x3 (const Float _m[9]) |
| Initialize the matrix from a given (float) 3x3 array in row-major order. More...
|
|
| Matrix3x3 (const Vector &v1, const Vector &v2, const Vector &v3) |
| Initialize the matrix from three 3D column vectors. More...
|
|
| Matrix3x3 (Stream *stream) |
| Unserialize a matrix from a stream. More...
|
|
| Matrix3x3 (const Matrix< 3, 3, Float > &mtx) |
| Copy constructor. More...
|
|
| Matrix3x3 (Float a00, Float a01, Float a02, Float a10, Float a11, Float a12, Float a20, Float a21, Float a22) |
| Initialize with the given values. More...
|
|
Float | det () const |
| Return the determinant (Faster than Matrix::det()) More...
|
|
Vector | operator* (const Vector &v) const |
| Matrix-vector multiplication. More...
|
|
Vector | preMult (const Vector &v) const |
| multiply the matrix by transpose of v, returns the transpose of the line vector. More...
|
|
Matrix3x3 | operator* (Float value) const |
| Scalar multiplication (creates a temporary) More...
|
|
Matrix3x3 & | operator= (const Matrix< 3, 3, Float > &mat) |
| Assignment operator. More...
|
|
Vector3 | row (int i) const |
| Return a row by index. More...
|
|
Vector3 | col (int i) const |
| Return a column by index. More...
|
|
| Matrix () |
| Construct a new MxN matrix without initializing it. More...
|
|
| Matrix (Floatvalue) |
| Initialize the matrix with constant entries. More...
|
|
| Matrix (const Float_m[M][N]) |
| Initialize the matrix from a given MxN array. More...
|
|
| Matrix (const Float_m[M *N]) |
| Initialize the matrix from a given (flat) MxN array in row-major order. More...
|
|
| Matrix (Stream *stream) |
| Unserialize a matrix from a stream. More...
|
|
| Matrix (const Matrix &mtx) |
| Copy constructor. More...
|
|
void | setIdentity () |
| Initialize with the identity matrix. More...
|
|
void | setZero () |
| Initialize with zeroes. More...
|
|
Float & | operator() (int i, int j) |
| Indexing operator. More...
|
|
const Float & | operator() (int i, int j) const |
| Indexing operator (const verions) More...
|
|
bool | operator== (const Matrix &mat) const |
| Equality operator. More...
|
|
bool | operator!= (const Matrix &mat) const |
| Inequality operator. More...
|
|
Matrix & | operator= (const Matrix &mat) |
| Assignment operator. More...
|
|
Matrix | operator+ (const Matrix &mat) const |
| Matrix addition (returns a temporary) More...
|
|
Matrix | operator+ (Floatvalue) const |
| Matrix-scalar addition (returns a temporary) More...
|
|
const Matrix & | operator+= (const Matrix &mat) |
| Matrix addition. More...
|
|
const Matrix & | operator+= (Floatvalue) |
| Matrix-scalar addition. More...
|
|
Matrix | operator- (const Matrix &mat) const |
| Matrix subtraction (returns a temporary) More...
|
|
Matrix | operator- (Floatvalue) const |
| Matrix-scalar subtraction (returns a temporary) More...
|
|
const Matrix & | operator- (Floatvalue) |
| Matrix-scalar subtraction. More...
|
|
Matrix | operator- () const |
| Component-wise negation. More...
|
|
const Matrix & | operator-= (const Matrix &mat) |
| Matrix subtraction. More...
|
|
const Matrix & | operator-= (Floatvalue) |
| Matrix-scalar addition. More...
|
|
Matrix | operator* (Floatvalue) const |
| Scalar multiplication (creates a temporary) More...
|
|
const Matrix & | operator*= (Floatvalue) |
| Scalar multiplication. More...
|
|
const Matrix & | operator*= (const Matrix &mat) |
| Matrix multiplication (for square matrices) More...
|
|
Matrix | operator/ (Floatvalue) const |
| Scalar division (creates a temporary) More...
|
|
const Matrix & | operator/= (Floatvalue) |
| Scalar division. More...
|
|
Float | trace () const |
| Compute the trace of a square matrix. More...
|
|
Float | frob () const |
| Compute the Frobenius norm. More...
|
|
bool | lu (Matrix &LU, int piv[M], int &pivsign) const |
| Compute the LU decomposition of a matrix. More...
|
|
bool | chol (Matrix &L) const |
|
void | cholSolve (const Matrix< M, K, Float > &B, Matrix< M, K, Float > &X) const |
|
void | luSolve (const Matrix< M, K, Float > &B, Matrix< M, K, Float > &X, int piv[M]) const |
|
Float | luDet (int pivsign) const |
| Compute the determinant of a decomposed matrix created by lu() More...
|
|
Float | cholDet () const |
| Compute the determinant of a decomposed matrix created by chol() More...
|
|
bool | isZero () const |
| Check if the matrix is identically zero. More...
|
|
bool | isIdentity () const |
| Test if this is the identity matrix. More...
|
|
Float | det () const |
| Compute the determinant of a square matrix (internally creates a LU decomposition) More...
|
|
bool | invert (Matrix &target) const |
| Compute the inverse of a square matrix using the Gauss-Jordan algorithm. More...
|
|
void | symEig (Matrix &Q, Floatd[M]) const |
| Perform a symmetric eigendecomposition of a square matrix into Q and D. More...
|
|
void | transpose (Matrix< N, M, Float > &target) const |
| Compute the transpose of this matrix. More...
|
|
void | serialize (Stream *stream) const |
| Serialize the matrix to a stream. More...
|
|
std::string | toString () const |
| Return a string representation. More...
|
|
Basic 3x3 matrix data type.