Go to the documentation of this file.
39 #ifndef GLM_GTX_quaternion
40 #define GLM_GTX_quaternion GLM_VERSION
44 #include "../gtc/quaternion.hpp"
46 #if(defined(GLM_MESSAGES) && !defined(glm_ext))
47 # pragma message("GLM: GLM_GTX_quaternion extension included")
58 template <
typename valType>
59 detail::tvec3<valType>
cross(
60 detail::tquat<valType>
const & q,
61 detail::tvec3<valType>
const & v);
66 template <
typename valType>
67 detail::tvec3<valType>
cross(
68 detail::tvec3<valType>
const & v,
69 detail::tquat<valType>
const & q);
75 template <
typename valType>
76 detail::tquat<valType>
squad(
77 detail::tquat<valType>
const & q1,
78 detail::tquat<valType>
const & q2,
79 detail::tquat<valType>
const & s1,
80 detail::tquat<valType>
const & s2,
86 template <
typename valType>
88 detail::tquat<valType>
const & prev,
89 detail::tquat<valType>
const & curr,
90 detail::tquat<valType>
const & next);
95 template <
typename valType>
96 detail::tquat<valType>
exp(
97 detail::tquat<valType>
const & q,
98 valType
const & exponent);
103 template <
typename valType>
104 detail::tquat<valType>
log(
105 detail::tquat<valType>
const & q);
110 template <
typename valType>
111 detail::tquat<valType>
pow(
112 detail::tquat<valType>
const & x,
125 template <
typename valType>
126 detail::tvec3<valType>
rotate(
127 detail::tquat<valType>
const & q,
128 detail::tvec3<valType>
const & v);
133 template <
typename valType>
134 detail::tvec4<valType>
rotate(
135 detail::tquat<valType>
const & q,
136 detail::tvec4<valType>
const & v);
141 template <
typename valType>
143 detail::tquat<valType>
const & q);
148 template <
typename valType>
150 detail::tquat<valType>
const & x){
return mat3_cast(x);}
155 template <
typename valType>
157 detail::tquat<valType>
const & x){
return mat4_cast(x);}
162 template <
typename valType>
164 detail::tmat3x3<valType>
const & x){
return quat_cast(x);}
169 template <
typename valType>
171 detail::tmat4x4<valType>
const & x){
return quat_cast(x);}
176 template <
typename T>
178 detail::tquat<T>
const & x,
179 detail::tquat<T>
const & y,
185 template <
typename T>
187 detail::tquat<T>
const & x,
188 detail::tquat<T>
const & y,
194 #include "quaternion.inl"
196 #endif//GLM_GTX_quaternion