FlukyEngine
quaternion_common.hpp
Go to the documentation of this file.
1 
21 #pragma once
22 
23 // Dependency:
24 #include "../ext/scalar_constants.hpp"
25 #include "../ext/quaternion_geometric.hpp"
26 #include "../common.hpp"
27 #include "../trigonometric.hpp"
28 #include "../exponential.hpp"
29 #include <limits>
30 
31 #if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
32 # pragma message("GLM: GLM_EXT_quaternion_common extension included")
33 #endif
34 
35 namespace glm
36 {
39 
52  template<typename T, qualifier Q>
53  GLM_FUNC_DECL qua<T, Q> mix(qua<T, Q> const& x, qua<T, Q> const& y, T a);
54 
64  template<typename T, qualifier Q>
65  GLM_FUNC_DECL qua<T, Q> lerp(qua<T, Q> const& x, qua<T, Q> const& y, T a);
66 
76  template<typename T, qualifier Q>
77  GLM_FUNC_DECL qua<T, Q> slerp(qua<T, Q> const& x, qua<T, Q> const& y, T a);
78 
91  template<typename T, typename S, qualifier Q>
92  GLM_FUNC_DECL qua<T, Q> slerp(qua<T, Q> const& x, qua<T, Q> const& y, T a, S k);
93 
98  template<typename T, qualifier Q>
99  GLM_FUNC_DECL qua<T, Q> conjugate(qua<T, Q> const& q);
100 
105  template<typename T, qualifier Q>
106  GLM_FUNC_DECL qua<T, Q> inverse(qua<T, Q> const& q);
107 
118  template<typename T, qualifier Q>
119  GLM_FUNC_DECL vec<4, bool, Q> isnan(qua<T, Q> const& x);
120 
129  template<typename T, qualifier Q>
130  GLM_FUNC_DECL vec<4, bool, Q> isinf(qua<T, Q> const& x);
131 
133 } //namespace glm
134 
135 #include "quaternion_common.inl"
Core features
Definition: common.hpp:20
GLM_FUNC_DECL qua< T, Q > slerp(qua< T, Q > const &x, qua< T, Q > const &y, T a)
Spherical linear interpolation of two quaternions.
Definition: quaternion_common.inl:41
GLM_FUNC_DECL qua< T, Q > conjugate(qua< T, Q > const &q)
Returns the q conjugate.
Definition: quaternion_common.inl:113
GLM_FUNC_DECL qua< T, Q > lerp(qua< T, Q > const &x, qua< T, Q > const &y, T a)
Linear interpolation of two quaternions.
Definition: quaternion_common.inl:29
GLM_FUNC_QUALIFIER mat< C, R, T, Q > inverse(mat< C, R, T, Q > const &m)
Return the inverse of a squared matrix.
Definition: func_matrix.inl:388
GLM_FUNC_DECL genTypeT mix(genTypeT x, genTypeT y, genTypeU a)
If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...
Definition: func_common.inl:526
GLM_FUNC_DECL vec< L, bool, Q > isnan(vec< L, T, Q > const &x)
Returns true if x holds a NaN (not a number) representation in the underlying implementation&#39;s set of...
Definition: func_common.inl:613
GLM_FUNC_DECL vec< L, bool, Q > isinf(vec< L, T, Q > const &x)
Returns true if x holds a positive infinity or negative infinity representation in the underlying imp...
Definition: func_common.inl:655