Functions

Matrix functions

GLM Core

For each of the following built-in matrix functions, there is both a single-precision floating point version, where all arguments and return values are single precision, and a double-precision floating version, where all arguments and return values are double precision. More...

Functions

template<typename valType >
detail::tmat2x2< valType >
::value_type 
determinant (detail::tmat2x2< valType > const &m)
template<typename valType >
detail::tmat3x3< valType >
::value_type 
determinant (detail::tmat3x3< valType > const &m)
template<typename valType >
detail::tmat4x4< valType >
::value_type 
determinant (detail::tmat4x4< valType > const &m)
template<typename valType >
detail::tmat4x4< valType > inverse (detail::tmat4x4< valType > const &m)
template<typename valType >
detail::tmat3x3< valType > inverse (detail::tmat3x3< valType > const &m)
template<typename valType >
detail::tmat2x2< valType > inverse (detail::tmat2x2< valType > const &m)
template<typename matType >
matType matrixCompMult (matType const &x, matType const &y)
template<typename vecType , typename matType >
matType outerProduct (vecType const &c, vecType const &r)
template<typename matType >
matType::transpose_type transpose (matType const &x)

Detailed Description

For each of the following built-in matrix functions, there is both a single-precision floating point version, where all arguments and return values are single precision, and a double-precision floating version, where all arguments and return values are double precision.

Only the single-precision floating point version is shown.


Function Documentation

detail::tmat2x2<valType>::value_type glm::determinant ( detail::tmat2x2< valType > const &  m)

Return the determinant of a mat2 matrix.

Template Parameters:
valTypeFloating-point scalar types.
See also:
- GLSL determinant man page
- GLSL 4.20.8 specification, section 8.6
detail::tmat3x3<valType>::value_type glm::determinant ( detail::tmat3x3< valType > const &  m)

Return the determinant of a mat3 matrix.

Template Parameters:
valTypeFloating-point scalar types.
See also:
- GLSL determinant man page
- GLSL 4.20.8 specification, section 8.6
detail::tmat4x4<valType>::value_type glm::determinant ( detail::tmat4x4< valType > const &  m)

Return the determinant of a mat4 matrix.

Template Parameters:
valTypeFloating-point scalar types.
See also:
- GLSL determinant man page
- GLSL 4.20.8 specification, section 8.6
detail::tmat4x4<valType> glm::inverse ( detail::tmat4x4< valType > const &  m)

Return the inverse of a mat4 matrix.

Template Parameters:
valTypeFloating-point scalar types.
See also:
- GLSL inverse man page
- GLSL 4.20.8 specification, section 8.6
detail::tmat3x3<valType> glm::inverse ( detail::tmat3x3< valType > const &  m)

Return the inverse of a mat3 matrix.

Template Parameters:
valTypeFloating-point scalar types.
See also:
- GLSL inverse man page
- GLSL 4.20.8 specification, section 8.6
detail::tmat2x2<valType> glm::inverse ( detail::tmat2x2< valType > const &  m)

Return the inverse of a mat2 matrix.

Template Parameters:
valTypeFloating-point scalar types.
See also:
- GLSL inverse man page
- GLSL 4.20.8 specification, section 8.6
matType glm::matrixCompMult ( matType const &  x,
matType const &  y 
)

Multiply matrix x by matrix y component-wise, i.e., result[i][j] is the scalar product of x[i][j] and y[i][j].

Template Parameters:
matTypeFloating-point matrix types.
See also:
- GLSL matrixCompMult man page
- GLSL 4.20.8 specification, section 8.6
matType glm::outerProduct ( vecType const &  c,
vecType const &  r 
)

Treats the first parameter c as a column vector and the second parameter r as a row vector and does a linear algebraic matrix multiply c * r.

Template Parameters:
matTypeFloating-point matrix types.
See also:
- GLSL outerProduct man page
- GLSL 4.20.8 specification, section 8.6
Todo:
Clarify the declaration to specify that matType doesn't have to be provided when used.
matType::transpose_type glm::transpose ( matType const &  x)

Returns the transposed matrix of x.

Template Parameters:
matTypeFloating-point matrix types.
See also:
- GLSL transpose man page
- GLSL 4.20.8 specification, section 8.6