# GLM: glm::core::function::matrix Namespace Reference

# glm::core::function::matrix Namespace Reference

Define all matrix functions from Section 8.5 of GLSL 1.30.8 specification. Included in glm namespace. More...

## Functions

template<typename genType >
genType::value_type | determinant (genType const &m)
| Return the determinant of a matrix.
template<typename genType >
genType | inverse (genType const &m)
| Return the inverse of a matrix.
template<typename matType >
matType | 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<typename vecType , typename matType >
matType | 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<typename matType >
matType::transpose_type | transpose (matType const &x)
| Returns the transposed matrix of x (From GLSL 1.30.08 specification, section 8.5).

## Detailed Description

Define all matrix functions from Section 8.5 of GLSL 1.30.8 specification. Included in glm namespace.

## Function Documentation

genType::value_type glm::core::function::matrix::determinant | ( | genType const & | m | ) |

Return the determinant of a matrix.

(From GLSL 1.50.09 specification, section 8.5). genType: mat2, mat3, mat4.

genType glm::core::function::matrix::inverse | ( | genType const & | m | ) |

Return the inverse of a matrix.

(From GLSL 1.40.07 specification, section 8.5). genType: mat2, mat3, mat4.

matType glm::core::function::matrix::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].

(From GLSL 1.30.08 specification, section 8.5)

matType glm::core::function::matrix::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.

(From GLSL 1.30.08 specification, section 8.5)