| 0.9.9 API documenation

- Main Page
- Modules
- Files

- File List

euler_angles.hpp
Go to the documentation of this file.
1
13 #pragma once
14
15 // Dependency:
16 #include "../glm.hpp"
17
18 #ifndef GLM_ENABLE_EXPERIMENTAL
19 # error "GLM: GLM_GTX_euler_angles 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 #endif
21
22 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
23 # pragma message("GLM: GLM_GTX_euler_angles extension included")
24 #endif
25
26 namespace glm
27 {
30
33 template<typename T>
34 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleX(
35 T const& angleX);
36
39 template<typename T>
40 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleY(
41 T const& angleY);
42
45 template<typename T>
46 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleZ(
47 T const& angleZ);
48
51 template<typename T>
52 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleXY(
53 T const& angleX,
54 T const& angleY);
55
58 template<typename T>
59 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleYX(
60 T const& angleY,
61 T const& angleX);
62
65 template<typename T>
66 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleXZ(
67 T const& angleX,
68 T const& angleZ);
69
72 template<typename T>
73 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleZX(
74 T const& angle,
75 T const& angleX);
76
79 template<typename T>
80 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleYZ(
81 T const& angleY,
82 T const& angleZ);
83
86 template<typename T>
87 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleZY(
88 T const& angleZ,
89 T const& angleY);
90
93 template<typename T>
94 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleXYZ(
95 T const& t1,
96 T const& t2,
97 T const& t3);
98
101 template<typename T>
102 GLM_FUNC_DECL mat<4, 4, T, defaultp> eulerAngleYXZ(
103 T const& yaw,
104 T const& pitch,
105 T const& roll);
106
109 template<typename T>
110 GLM_FUNC_DECL mat<4, 4, T, defaultp> yawPitchRoll(
111 T const& yaw,
112 T const& pitch,
113 T const& roll);
114
117 template<typename T>
118 GLM_FUNC_DECL mat<2, 2, T, defaultp> orientate2(T const& angle);
119
122 template<typename T>
123 GLM_FUNC_DECL mat<3, 3, T, defaultp> orientate3(T const& angle);
124
127 template<typename T, qualifier Q>
128 GLM_FUNC_DECL mat<3, 3, T, Q> orientate3(vec<3, T, Q> const& angles);
129
132 template<typename T, qualifier Q>
133 GLM_FUNC_DECL mat<4, 4, T, Q> orientate4(vec<3, T, Q> const& angles);
134
137 template<typename T>
138 GLM_FUNC_DECL void extractEulerAngleXYZ(mat<4, 4, T, defaultp> const& M,
139 T & t1,
140 T & t2,
141 T & t3);
142
144 }//namespace glm
145
146 #include "euler_angles.inl"
glm::eulerAngleXZ
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleXZ(T const &angleX, T const &angleZ)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Z).
glm::orientate2
GLM_FUNC_DECL mat< 2, 2, T, defaultp > orientate2(T const &angle)
Creates a 2D 2 * 2 rotation matrix from an euler angle.
glm::orientate3
GLM_FUNC_DECL mat< 3, 3, T, Q > orientate3(vec< 3, T, Q > const &angles)
Creates a 3D 3 * 3 rotation matrix from euler angles (Y * X * Z).
glm::eulerAngleXY
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleXY(T const &angleX, T const &angleY)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y).
glm
Definition: common.hpp:20
glm::orientate4
GLM_FUNC_DECL mat< 4, 4, T, Q > orientate4(vec< 3, T, Q > const &angles)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).
glm::eulerAngleX
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleX(T const &angleX)
Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle X.
glm::eulerAngleYZ
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleYZ(T const &angleY, T const &angleZ)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * Z).
glm::eulerAngleY
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleY(T const &angleY)
Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Y.
glm::eulerAngleZ
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleZ(T const &angleZ)
Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Z.
glm::yawPitchRoll
GLM_FUNC_DECL mat< 4, 4, T, defaultp > yawPitchRoll(T const &yaw, T const &pitch, T const &roll)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).
glm::eulerAngleYXZ
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleYXZ(T const &yaw, T const &pitch, T const &roll)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).
glm::extractEulerAngleXYZ
GLM_FUNC_DECL void extractEulerAngleXYZ(mat< 4, 4, T, defaultp > const &M, T &t1, T &t2, T &t3)
Extracts the (X * Y * Z) Euler angles from the rotation matrix M.
glm::eulerAngleYX
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleYX(T const &angleY, T const &angleX)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X).
glm::angle
GLM_FUNC_DECL T angle(tquat< T, Q > const &x)
Returns the quaternion rotation angle.
glm::pitch
GLM_FUNC_DECL T pitch(tquat< T, Q > const &x)
Returns pitch value of euler angles expressed in radians.
glm::yaw
GLM_FUNC_DECL T yaw(tquat< T, Q > const &x)
Returns yaw value of euler angles expressed in radians.
glm::eulerAngleZX
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleZX(T const &angle, T const &angleX)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * X).
glm::eulerAngleXYZ
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleXYZ(T const &t1, T const &t2, T const &t3)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y * Z).
glm::eulerAngleZY
GLM_FUNC_DECL mat< 4, 4, T, defaultp > eulerAngleZY(T const &angleZ, T const &angleY)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * Y).
glm::roll
GLM_FUNC_DECL T roll(tquat< T, Q > const &x)
Returns roll value of euler angles expressed in radians.