1.0.0 API documentation
Loading...
Searching...
No Matches
matrix_operation.hpp
Go to the documentation of this file.
1
12
13#pragma once
14
15// Dependency:
16#include "../glm.hpp"
17
18#ifndef GLM_ENABLE_EXPERIMENTAL
19# error "GLM: GLM_GTX_matrix_operation is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it."
20#elif GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
21# pragma message("GLM: GLM_GTX_matrix_operation extension included")
22#endif
23
24namespace glm
25{
28
31 template<typename T, qualifier Q>
32 GLM_FUNC_DECL mat<2, 2, T, Q> diagonal2x2(
33 vec<2, T, Q> const& v);
34
37 template<typename T, qualifier Q>
38 GLM_FUNC_DECL mat<2, 3, T, Q> diagonal2x3(
39 vec<2, T, Q> const& v);
40
43 template<typename T, qualifier Q>
44 GLM_FUNC_DECL mat<2, 4, T, Q> diagonal2x4(
45 vec<2, T, Q> const& v);
46
49 template<typename T, qualifier Q>
50 GLM_FUNC_DECL mat<3, 2, T, Q> diagonal3x2(
51 vec<2, T, Q> const& v);
52
55 template<typename T, qualifier Q>
56 GLM_FUNC_DECL mat<3, 3, T, Q> diagonal3x3(
57 vec<3, T, Q> const& v);
58
61 template<typename T, qualifier Q>
62 GLM_FUNC_DECL mat<3, 4, T, Q> diagonal3x4(
63 vec<3, T, Q> const& v);
64
67 template<typename T, qualifier Q>
68 GLM_FUNC_DECL mat<4, 2, T, Q> diagonal4x2(
69 vec<2, T, Q> const& v);
70
73 template<typename T, qualifier Q>
74 GLM_FUNC_DECL mat<4, 3, T, Q> diagonal4x3(
75 vec<3, T, Q> const& v);
76
79 template<typename T, qualifier Q>
80 GLM_FUNC_DECL mat<4, 4, T, Q> diagonal4x4(
81 vec<4, T, Q> const& v);
82
85 template<typename T, qualifier Q>
86 GLM_FUNC_DECL mat<2, 2, T, Q> adjugate(mat<2, 2, T, Q> const& m);
87
90 template<typename T, qualifier Q>
91 GLM_FUNC_DECL mat<3, 3, T, Q> adjugate(mat<3, 3, T, Q> const& m);
92
95 template<typename T, qualifier Q>
96 GLM_FUNC_DECL mat<4, 4, T, Q> adjugate(mat<4, 4, T, Q> const& m);
97
99}//namespace glm
100
101#include "matrix_operation.inl"
GLM_FUNC_DECL mat< 4, 3, T, Q > diagonal4x3(vec< 3, T, Q > const &v)
Build a diagonal matrix.
GLM_FUNC_DECL mat< 4, 2, T, Q > diagonal4x2(vec< 2, T, Q > const &v)
Build a diagonal matrix.
GLM_FUNC_DECL mat< 4, 4, T, Q > diagonal4x4(vec< 4, T, Q > const &v)
Build a diagonal matrix.
GLM_FUNC_DECL mat< 2, 2, T, Q > diagonal2x2(vec< 2, T, Q > const &v)
Build a diagonal matrix.
GLM_FUNC_DECL mat< 2, 3, T, Q > diagonal2x3(vec< 2, T, Q > const &v)
Build a diagonal matrix.
GLM_FUNC_DECL mat< 3, 4, T, Q > diagonal3x4(vec< 3, T, Q > const &v)
Build a diagonal matrix.
GLM_FUNC_DECL mat< 3, 3, T, Q > diagonal3x3(vec< 3, T, Q > const &v)
Build a diagonal matrix.
GLM_FUNC_DECL mat< 3, 2, T, Q > diagonal3x2(vec< 2, T, Q > const &v)
Build a diagonal matrix.
GLM_FUNC_DECL mat< 2, 4, T, Q > diagonal2x4(vec< 2, T, Q > const &v)
Build a diagonal matrix.
GLM_FUNC_DECL mat< 2, 2, T, Q > adjugate(mat< 2, 2, T, Q > const &m)
Build an adjugate matrix.