FlukyEngine
transform.hpp
Go to the documentation of this file.
1 
16 #pragma once
17 
18 // Dependency:
19 #include "../glm.hpp"
20 #include "../gtc/matrix_transform.hpp"
21 
22 #if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
23 # ifndef GLM_ENABLE_EXPERIMENTAL
24 # pragma message("GLM: GLM_GTX_transform 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.")
25 # else
26 # pragma message("GLM: GLM_GTX_transform extension included")
27 # endif
28 #endif
29 
30 namespace glm
31 {
34 
38  template<typename T, qualifier Q>
39  GLM_FUNC_DECL mat<4, 4, T, Q> translate(
40  vec<3, T, Q> const& v);
41 
45  template<typename T, qualifier Q>
46  GLM_FUNC_DECL mat<4, 4, T, Q> rotate(
47  T angle,
48  vec<3, T, Q> const& v);
49 
53  template<typename T, qualifier Q>
54  GLM_FUNC_DECL mat<4, 4, T, Q> scale(
55  vec<3, T, Q> const& v);
56 
58 }// namespace glm
59 
60 #include "transform.inl"
GLM_FUNC_DECL T angle(qua< T, Q > const &x)
Returns the quaternion rotation angle.
Definition: quaternion_trigonometric.inl:6
GLM_FUNC_DECL mat< 4, 4, T, Q > translate(mat< 4, 4, T, Q > const &m, vec< 3, T, Q > const &v)
Builds a translation 4 * 4 matrix created from a vector of 3 components.
Definition: matrix_transform.inl:10
Core features
Definition: common.hpp:20
GLM_FUNC_DECL mat< 4, 4, T, Q > rotate(mat< 4, 4, T, Q > const &m, T angle, vec< 3, T, Q > const &axis)
Builds a rotation 4 * 4 matrix created from an axis vector and an angle.
Definition: matrix_transform.inl:18
GLM_FUNC_DECL mat< 4, 4, T, Q > scale(mat< 4, 4, T, Q > const &m, vec< 3, T, Q > const &v)
Builds a scale 4 * 4 matrix created from 3 scalars.
Definition: matrix_transform.inl:78