Matrix functions
GLM Core

## 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::tmat2x2< valType > inverse (detail::tmat2x2< valType > const &m)

template<typename valType >
detail::tmat3x3< valType > inverse (detail::tmat3x3< valType > const &m)

template<typename valType >
detail::tmat4x4< valType > inverse (detail::tmat4x4< 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::value_type glm::determinant ( detail::tmat2x2< valType > const & m )

Return the determinant of a mat2 matrix.

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

Return the determinant of a mat3 matrix.

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

Return the determinant of a mat4 matrix.

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

Return the inverse of a mat2 matrix.

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

Return the inverse of a mat3 matrix.

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

Return the inverse of a mat4 matrix.

Template Parameters
 valType Floating-point scalar types.
GLSL inverse man page
GLSL 4.20.8 specification, section 8.6 Matrix Functions
 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
 matType Floating-point matrix types.
GLSL matrixCompMult man page
GLSL 4.20.8 specification, section 8.6 Matrix Functions
 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
 matType Floating-point matrix types.