Classes | |
| struct | row_accessor |
Public Types | |
| typedef float_t | float_type |
| typedef float_t | value_type |
| typedef matrix< M, N, float_t > | matrix_type |
| typedef float_t * | iterator |
| typedef const float_t * | const_iterator |
Public Member Functions | |
| iterator | begin () |
| iterator | end () |
| const_iterator | begin () const |
| const_iterator | end () const |
| float_t & | operator() (size_t rowIndex, size_t colIndex) |
| const float_t & | operator() (size_t rowIndex, size_t colIndex) const |
| float_t & | at (size_t rowIndex, size_t colIndex) |
| const float_t & | at (size_t rowIndex, size_t colIndex) const |
| matrix (const matrix_functor< matrix< M, N, float_t > > &functor) | |
| void | zero () |
| void | identity () |
| bool | operator== (const matrix &other) const |
| bool | operator!= (const matrix &other) const |
| bool | isEqualTo (const matrix &other, float_t tolerance) |
| template<size_t P> | |
| void | multiply (const matrix< M, P, float_t > &left, const matrix< P, N, float_t > &right) |
| matrix | operator* (matrix &other) |
| template<size_t P> | |
| matrix< M, P, float_t > | operator* (matrix< N, P, float_t > &other) |
| void | operator*= (const matrix< M, M, float_t > &right) |
| matrix | operator+ (const matrix &other) const |
| matrix | operator- (const matrix &other) const |
| void | operator+= (const matrix &other) |
| void | operator-= (const matrix &other) |
| template<size_t P, size_t Q> | |
| void | directSum (const matrix< P, Q, float_t > &other, matrix< M+P, N+Q, float_t > &result) |
| template<size_t P, size_t Q> | |
| matrix< M+P, N+Q, float_t > | directSum (const matrix< P, Q, float_t > &other) |
| matrix | operator* (float_t scalar) |
| void | operator*= (float_t scalar) |
| vector< M, float_t > | operator* (const vector< N, float_t > &other) const |
| vector< M-1, float_t > | operator* (const vector< N-1, float_t > &other) const |
| matrix< M, N, float_t > | operator- () const |
| matrix< M, N, float_t > | negate () const |
| void | tensor (const vector< M, float_t > &u, const vector< N, float_t > &v) |
| void | tensor (const vector< M-1, float_t > &u, const vector< N-1, float_t > &v) |
| template<size_t Mret, size_t Nret> | |
| matrix< Mret, Nret, float_t > | getSubMatrix (size_t rowOffset, size_t colOffset) const |
| template<size_t Mret, size_t Nret> | |
| void | getSubMatrix (matrix< Mret, Nret, float_t > &result, size_t rowOffset=0, size_t colOffset=0) const |
| template<size_t Mret, size_t Nret> | |
| void | setSubMatrix (const matrix< Mret, Nret, float_t > &subMatrix, size_t rowOffset=0, size_t colOffset=0) |
| void | transposeTo (matrix< N, M, float_t > &transposedMatrix) const |
| matrix< N, M, float_t > | getTransposed () const |
| void | operator= (const float_t *data_array) |
| void | operator= (const float_t old_fashioned_matrix[M][N]) |
| void | operator= (const std::vector< float_t > &data) |
| void | operator= (float_t fill_value) |
| void | fill (float_t fill_value) |
| bool | set (const std::vector< std::string > &values) |
| bool | set (const std::string &values, char delimiter) |
| void | set (float_t v00, float_t v01, float_t v02, float_t v10, float_t v11, float_t v12, float_t v20, float_t v21, float_t v22) |
| void | set (float_t v00, float_t v01, float_t v02, float_t v03, float_t v10, float_t v11, float_t v12, float_t v13, float_t v20, float_t v21, float_t v22, float_t v23, float_t v30, float_t v31, float_t v32, float_t v33) |
| void | copyFrom1DimCArray (const float_t *c_array, bool row_by_row_layout=true) |
| template<typename different_float_t > | |
| void | copyFrom1DimCArray (const different_float_t *c_array, bool row_by_row_layout=true) |
| vector< M, float_t > | getColumn (size_t columnNumber) const |
| void | getColumn (size_t columnNumber, vector< M, float_t > &column) const |
| void | setColumn (size_t columnNumber, const vector< M, float_t > &column) |
| void | getColumn (size_t columnNumber, matrix< M, 1, float_t > &column) const |
| void | setColumn (size_t columnNumber, const matrix< M, 1, float_t > &column) |
| vector< N, float_t > | getRow (size_t rowNumber) const |
| void | getRow (size_t rowNumber, vector< N, float_t > &row) const |
| void | setRow (size_t rowNumber, const vector< N, float_t > &row) |
| void | getRow (size_t rowNumber, matrix< 1, N, float_t > &row) const |
| void | setRow (size_t rowNumber, const matrix< 1, N, float_t > &row) |
| size_t | size () const |
| size_t | getM () const |
| size_t | getNumberOfRows () const |
| size_t | getN () const |
| size_t | getNumberOfColumns () const |
| float_t | getDeterminant () const |
| void | getAdjugate (matrix< M, M, float_t > &adjugate) const |
| void | getCofactors (matrix< M, N, float_t > &cofactors) const |
| bool | getInverse (matrix< M, M, float_t > &inverse, float_t tolerance=1e-9) const |
| float_t | getMinor (matrix< M-1, N-1 > &other, size_t row_to_cut, size_t col_to_cut) |
| bool | isPositiveDefinite (const float_t limit=-1e12) const |
| void | rotate (const float_t angle, const vector< M-1, float_t > &axis) |
| void | rotateX (const float_t angle) |
| void | rotateY (const float_t angle) |
| void | rotateZ (const float_t angle) |
| void | preRotateX (const float_t angle) |
| void | preRotateY (const float_t angle) |
| void | preRotateZ (const float_t angle) |
| void | scale (const float_t scale[3]) |
| void | scale (const float_t x, const float_t y, const float_t z) |
| void | scale (const vector< 3, float_t > &scale_) |
| void | scaleTranslation (const float_t scale_[3]) |
| void | scaleTranslation (const vector< 3, float_t > &scale_) |
| void | setTranslation (const float_t x, const float_t y, const float_t z) |
| void | setTranslation (const float_t trans[3]) |
| void | setTranslation (const vector< 3, float_t > &trans) |
| vector< 3, float_t > | getTranslation () const |
| bool | getString (std::string &result, const std::string &delimiter=" ") const |
| row_accessor | operator[] (size_t rowIndex) |
| template<> | |
| float | getDeterminant () const |
| template<> | |
| double | getDeterminant () const |
| template<> | |
| float | getDeterminant () const |
| template<> | |
| double | getDeterminant () const |
| template<> | |
| void | getAdjugate (matrix< 2, 2, float > &adjugate) const |
| template<> | |
| void | getAdjugate (matrix< 2, 2, double > &adjugate) const |
| template<> | |
| bool | getInverse (matrix< 2, 2, float > &Minverse, float tolerance) const |
| template<> | |
| bool | getInverse (matrix< 2, 2, double > &Minverse, double tolerance) const |
| template<> | |
| bool | getInverse (matrix< 3, 3, float > &result, float tolerance) const |
| template<> | |
| bool | getInverse (matrix< 3, 3, double > &result, double tolerance) const |
| template<> | |
| bool | getInverse (matrix< 4, 4, float > &result, float tolerance) const |
| template<> | |
| bool | getInverse (matrix< 4, 4, double > &result, double tolerance) const |
Static Public Member Functions | |
| template<typename init_functor_t > | |
| static const matrix | getInitializedMatrix () |
Public Attributes | |
| float_t | array [M *N] |
Static Public Attributes | |
|
static const matrix< M, N, float_t > | IDENTITY |
|
static const matrix< M, N, float_t > | ZERO |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const matrix< M, N, float_t > &matrix) |
| void vmml::matrix< M, N, float_t >::rotate | ( | const float_t | angle, | |
| const vector< M-1, float_t > & | axis | |||
| ) | [inline] |
create rotation matrix from parameters.
| angle | - angle in radians | |
| rotation | axis - must be normalized! |
1.6.2