Constructs the matrix: If a single value is passed, the matrix will be cleared with this value ( each column in each col will contain this value ). If a matrix with more cols and columns is passed, the matrix will be the upper left nxm matrix. If a matrix with less cols and columns is passed, the passed matrix will be stored in the upper left of an identity matrix. It's also allowed to pass vectors and scalars at a time, but the vectors dimension must match the number of columns and align correctly.
Construct a Matrix from another Matrix, equal sized or bigger
Construct a Matrix from another Matrix, smaler sized
Construct a Matrix from a single value
mat2
Returns the determinant of the current data ( 2x2, 3x3 and 4x4 matrices ).
Sets all values of the matrix to value ( each column in each col will contain this value ).
Inverts the current matrix ( nxn matrices, n <= 4 ).
Makes the current matrix an scaled identity matrix
Makes the current matrix an identity matrix
Componentwise binary matrix-skalar operation: addition, subtraction, multiplication, division
Matrix-vector multiplication
matrix-matrix componentwise operations addition, subtraction and division, using vector-vector operations of all colums
matrix-matrix multiplication, using matrix-vector multiplication for each column of mat
Componentwise binary skalar-matrix operation: addition, subtraction, multiplication, division
Vector-Matrix multiplication
Rotate the current matrix arround an arbitrary axis
Rotate the current matrix arround an arbitrary axis
Rotates the current matrix around the x - axis and returns $( I this ) ( nxn matrices, n >= 3 ).
Rotates the current matrix around the y - axis and returns $( I this ) ( nxn matrices, n >= 3 ).
Rotates the current matrix around the z - axis and returns $( I this ) ( nxn matrices, n >= 3 ).
Returns an identity matrix with the current rotation applied ( nxn matrices, n >= 3 ).
scale an existing matrix
scale an existing matrix
Applys a scale to the current matrix and returns $( I this ) ( 3x3 and 4x4 matrices ).
Returns an identity matrix with the current scale applied ( nxn matrices, n >= 3 ).
translate an existing matrix
translate an existing matrix
Applys a translation on the current matrix and returns $( I this ) ( 3x3 and 4x4 matrices ).
Returns an identity matrix with the current translation applied ( nxn matrices, n >= 3 ) ..
Transposes the current matrix TODO : as free function and use here
Returns the current matrix as pretty formatted string. TODO : Check This
Returns the current matrix formatted as flat string.
mat2
Returns a identity matrix.
Returns an inverted copy of the current matrix ( nxn matrices, n <= 4 ).
Returns true if all values are not nan and finite, otherwise false.
Returns the pointer to the stored values as OpenGL requires it. Note this will return a pointer to a $( RED column - major ) matrix, $( RED this is the OpneGL convention and expected in programs via Uniforms or UBOs ).
Returns a transposed copy of the matrix. TODO : Remove this, create a function which returns a transposed matrix like Wrong logic anyway, as transpose( mat3x2 ) = mat2x3
Returns an inverse ortographic matrix ( 4x4 and floating - point matrices only ).
Construct an inverse, symmetric perspective matrix ( 4x4 and floating - point matrices only ).
Construct an inverse, optionally non-symmetric perspective matrix
Construct a look at matrix ( 4x4 and floating - point matrices only ).
Construct an orthographic matrix ( 4x4 and floating - point matrices only ).
Construct a symmetric perspective matrix ( 4x4 and floating - point matrices only ).
Construct an optionally non-symmetric perspective matrix
Returns an identity matrix with an applied 2D rotation.
Returns an identity matrix with an applied rotate_axis around an arbitrary axis ( nxn matrices, n >= 3 ).
Returns an identity matrix with an applied rotation around the A-Canonical - axis ( nxn matrices, n >= 3 ).
scaling, static construction of a scaling matrix
scaling, static construction of a scaling matrix
Returns a scaling matrix ( 3x3 and 4x4 matrices );
translation, static construction of a translation matrix
translation, static construction of a translation matrix
Returns a translation matrix ( 3x3 and 4x4 matrices ).
Holds the matrix $( RED column - major ) in memory. +//// Each Column is Vector of length row
Base template for all matrix - types.