43 #include "../mat3x3.hpp" 44 #include "../mat4x4.hpp" 45 #include "../vec3.hpp" 46 #include "../vec4.hpp" 47 #include "../gtc/constants.hpp" 49 #if(defined(GLM_MESSAGES) && !defined(GLM_EXT_INCLUDED)) 50 # pragma message("GLM: GLM_GTC_quaternion extension included") 56 template <
typename T, precision P>
71 template <
typename U, precision Q>
113 template <
typename T, precision P>
117 template <
typename T, precision P>
122 template <
typename T, precision P>
127 template <
typename T, precision P>
132 template <
typename T, precision P>
137 template <
typename T, precision P>
142 template <
typename T, precision P>
147 template <
typename T, precision P>
152 template <
typename T, precision P>
157 template <
typename T, precision P>
170 template <
typename T, precision P>
177 template <
typename T, precision P>
184 template <
typename T, precision P,
template <
typename, precision>
class quatType>
186 quatType<T, P>
const &
x,
187 quatType<T, P>
const &
y);
199 template <
typename T, precision P>
213 template <
typename T, precision P>
227 template <
typename T, precision P>
236 template <
typename T, precision P>
243 template <
typename T, precision P>
254 template <
typename T, precision P>
264 template <
typename T, precision P>
271 template <
typename T, precision P>
277 template <
typename T, precision P>
283 template <
typename T, precision P>
289 template <
typename T, precision P>
296 template <
typename T, precision P>
303 template <
typename T, precision P>
310 template <
typename T, precision P>
317 template <
typename T, precision P>
323 template <
typename T, precision P>
333 template <
typename T, precision P>
343 template <
typename T, precision P>
353 template <
typename T, precision P>
363 template <
typename T, precision P>
373 template <
typename T, precision P>
383 template <
typename T, precision P>
393 template <
typename T, precision P>
401 #include "quaternion.inl" GLM_FUNC_DECL T roll(detail::tquat< T, P > const &x)
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const
GLM_FUNC_DECL tquat< T, P > & operator/=(T const &s)
tvec4< bool, P > bool_type
GLM_FUNC_DECL detail::tvec3< T, P > axis(detail::tquat< T, P > const &x)
GLM_FUNC_DECL detail::tquat< T, P > lerp(detail::tquat< T, P > const &x, detail::tquat< T, P > const &y, T const &a)
GLM_FUNC_DECL detail::tquat< T, P > conjugate(detail::tquat< T, P > const &q)
GLM_FUNC_DECL tquat< T, P > & operator+=(tquat< T, P > const &q)
GLM_FUNC_DECL T angle(detail::tquat< T, P > const &x)
GLM_FUNC_DECL T pitch(detail::tquat< T, P > const &x)
GLM_FUNC_DECL vecType< T, P > mix(vecType< T, P > const &x, vecType< T, P > const &y, vecType< U, P > const &a)
GLM_FUNC_DECL tmat2x2< T, P > operator*(tmat2x2< T, P > const &m, T const &s)
GLM_FUNC_DECL detail::tquat< T, P > angleAxis(T const &angle, detail::tvec3< T, P > const &axis)
GLM_FUNC_DECL genType normalize(genType const &x)
GLM_FUNC_DECL tmat2x2< T, P > operator+(tmat2x2< T, P > const &m, T const &s)
GLM_FUNC_DECL tmat2x2< T, P > operator/(tmat2x2< T, P > const &m, T const &s)
GLM_FUNC_DECL vecType< T, P >::bool_type notEqual(vecType< T, P > const &x, vecType< T, P > const &y)
GLM_FUNC_DECL vecType< T, P >::bool_type greaterThanEqual(vecType< T, P > const &x, vecType< T, P > const &y)
GLM_FUNC_DECL detail::tquat< T, P > slerp(detail::tquat< T, P > const &x, detail::tquat< T, P > const &y, T const &a)
Returns the slurp interpolation between two quaternions.
GLM_FUNC_DECL tmat2x2< T, P > operator-(tmat2x2< T, P > const &m, T const &s)
GLM_FUNC_DECL detail::tvec3< T, P > eulerAngles(detail::tquat< T, P > const &x)
GLM_FUNC_DECL vecType< T, P >::bool_type lessThanEqual(vecType< T, P > const &x, vecType< T, P > const &y)
GLM_FUNC_DECL detail::tquat< T, P > quat_cast(detail::tmat3x3< T, P > const &x)
GLM_FUNC_DECL detail::tvec4< bool, P > equal(detail::tquat< T, P > const &x, detail::tquat< T, P > const &y)
GLM_FUNC_DECL detail::tmat4x4< T, P > mat4_cast(detail::tquat< T, P > const &x)
GLM_FUNC_DECL detail::tvec4< bool, P > lessThan(detail::tquat< T, P > const &x, detail::tquat< T, P > const &y)
GLM_FUNC_DECL T & operator[](length_t i)
GLM_FUNC_DECL T dot(vecType< T, P > const &x, vecType< T, P > const &y)
GLM_FUNC_DECL detail::tmat3x3< T, P > mat3_cast(detail::tquat< T, P > const &x)
GLM_FUNC_DECL T yaw(detail::tquat< T, P > const &x)
GLM_FUNC_DECL vecType< T, P >::bool_type greaterThan(vecType< T, P > const &x, vecType< T, P > const &y)
GLM_FUNC_DECL tquat< T, P > & operator*=(tquat< T, P > const &q)
GLM_FUNC_DECL matType< T, P > inverse(matType< T, P > const &m)