0.9.9 API documentation
Loading...
Searching...
No Matches
quaternion_common.hpp
Go to the documentation of this file.
1
20
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
35namespace 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"
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...
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's set of...
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 ...
GLM_FUNC_DECL qua< T, Q > conjugate(qua< T, Q > const &q)
Returns the q conjugate.
GLM_FUNC_DECL qua< T, Q > inverse(qua< T, Q > const &q)
Returns the q inverse.
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.
GLM_FUNC_DECL qua< T, Q > lerp(qua< T, Q > const &x, qua< T, Q > const &y, T a)
Linear interpolation of two quaternions.