FlukyEngine
vector_angle.hpp
Go to the documentation of this file.
1 
15 #pragma once
16 
17 // Dependency:
18 #include "../glm.hpp"
19 #include "../gtc/epsilon.hpp"
20 #include "../gtx/quaternion.hpp"
21 #include "../gtx/rotate_vector.hpp"
22 
23 #if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
24 # ifndef GLM_ENABLE_EXPERIMENTAL
25 # pragma message("GLM: GLM_GTX_vector_angle 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.")
26 # else
27 # pragma message("GLM: GLM_GTX_vector_angle extension included")
28 # endif
29 #endif
30 
31 namespace glm
32 {
35 
39  template<length_t L, typename T, qualifier Q>
40  GLM_FUNC_DECL T angle(vec<L, T, Q> const& x, vec<L, T, Q> const& y);
41 
45  template<typename T, qualifier Q>
46  GLM_FUNC_DECL T orientedAngle(vec<2, T, Q> const& x, vec<2, T, Q> const& y);
47 
51  template<typename T, qualifier Q>
52  GLM_FUNC_DECL T orientedAngle(vec<3, T, Q> const& x, vec<3, T, Q> const& y, vec<3, T, Q> const& ref);
53 
55 }// namespace glm
56 
57 #include "vector_angle.inl"
GLM_FUNC_DECL T angle(qua< T, Q > const &x)
Returns the quaternion rotation angle.
Definition: quaternion_trigonometric.inl:6
Core features
Definition: common.hpp:20
GLM_FUNC_DECL T orientedAngle(vec< 2, T, Q > const &x, vec< 2, T, Q > const &y)
Returns the oriented angle between two 2d vectors.
Definition: vector_angle.inl:25