master
ブランチ master
ShaderPlayground / deps / glm / glm / gtx / transform.hpp
1.6 KB、60行 生 Blame 履歴
1/// @ref gtx_transform
2/// @file glm/gtx/transform.hpp
3///
4/// @see core (dependence)
5/// @see gtc_matrix_transform (dependence)
6/// @see gtx_transform
7/// @see gtx_transform2
8///
9/// @defgroup gtx_transform GLM_GTX_transform
10/// @ingroup gtx
11///
12/// Include <glm/gtx/transform.hpp> to use the features of this extension.
13///
14/// Add transformation matrices
15
16#pragma once
17
18// Dependency:
19#include "../glm.hpp"
20#include "../gtc/matrix_transform.hpp"
21
22#ifndef GLM_ENABLE_EXPERIMENTAL
23# error "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."
24#endif
25
26#if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
27# pragma message("GLM: GLM_GTX_transform extension included")
28#endif
29
30namespace glm
31{
32 /// @addtogroup gtx_transform
33 /// @{
34
35 /// Transforms a matrix with a translation 4 * 4 matrix created from 3 scalars.
36 /// @see gtc_matrix_transform
37 /// @see gtx_transform
38 template<typename T, qualifier Q>
39 GLM_FUNC_DECL mat<4, 4, T, Q> translate(
40 vec<3, T, Q> const& v);
41
42 /// Builds a rotation 4 * 4 matrix created from an axis of 3 scalars and an angle expressed in radians.
43 /// @see gtc_matrix_transform
44 /// @see gtx_transform
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
50 /// Transforms a matrix with a scale 4 * 4 matrix created from a vector of 3 components.
51 /// @see gtc_matrix_transform
52 /// @see gtx_transform
53 template<typename T, qualifier Q>
54 GLM_FUNC_DECL mat<4, 4, T, Q> scale(
55 vec<3, T, Q> const& v);
56
57 /// @}
58}// namespace glm
59
60#include "transform.inl"