18 #include "../geometric.hpp"
19 #include "../exponential.hpp"
20 #include "../ext/vector_relational.hpp"
22 #if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
23 # pragma message("GLM: GLM_EXT_quaternion_geometric extension included")
37 template<
typename T, qualifier Q>
38 GLM_FUNC_DECL T
length(qua<T, Q>
const& q);
46 template<
typename T, qualifier Q>
47 GLM_FUNC_DECL qua<T, Q>
normalize(qua<T, Q>
const& q);
55 template<
typename T, qualifier Q>
56 GLM_FUNC_DECL T
dot(qua<T, Q>
const& x, qua<T, Q>
const& y);
64 template<
typename T, qualifier Q>
65 GLM_FUNC_QUALIFIER qua<T, Q>
cross(qua<T, Q>
const& q1, qua<T, Q>
const& q2);
70 #include "quaternion_geometric.inl"
GLM_FUNC_DECL T length(qua< T, Q > const &q)
Returns the norm of a quaternions.
GLM_FUNC_DECL T dot(qua< T, Q > const &x, qua< T, Q > const &y)
Returns dot product of q1 and q2, i.e., q1[0] * q2[0] + q1[1] * q2[1] + ...
GLM_FUNC_QUALIFIER qua< T, Q > cross(qua< T, Q > const &q1, qua< T, Q > const &q2)
Compute a cross product.
GLM_FUNC_DECL qua< T, Q > normalize(qua< T, Q > const &q)
Returns the normalized quaternion.