Functions
GLM_GTX_quaternion: Extented quaternion types and functions
GTX Extensions (Experimental)

Extented quaternion types and functions. More...

Functions

template<typename valType >
valType angle (detail::tquat< valType > const &x)
template<typename valType >
detail::tquat< valType > angleAxis (valType const &angle, valType const &x, valType const &y, valType const &z)
template<typename valType >
detail::tquat< valType > angleAxis (valType const &angle, detail::tvec3< valType > const &axis)
template<typename valType >
detail::tvec3< valType > axis (detail::tquat< valType > const &x)
template<typename valType >
detail::tvec3< valType > cross (detail::tquat< valType > const &q, detail::tvec3< valType > const &v)
template<typename valType >
detail::tvec3< valType > cross (detail::tvec3< valType > const &v, detail::tquat< valType > const &q)
template<typename valType >
detail::tvec3< valType > eulerAngles (detail::tquat< valType > const &x)
template<typename valType >
detail::tquat< valType > exp (detail::tquat< valType > const &q, valType const &exponent)
template<typename valType >
valType extractRealComponent (detail::tquat< valType > const &q)
template<typename T >
detail::tquat< T > fastMix (detail::tquat< T > const &x, detail::tquat< T > const &y, T const &a)
template<typename valType >
detail::tquat< valType > intermediate (detail::tquat< valType > const &prev, detail::tquat< valType > const &curr, detail::tquat< valType > const &next)
template<typename valType >
detail::tquat< valType > log (detail::tquat< valType > const &q)
template<typename valType >
valType pitch (detail::tquat< valType > const &x)
template<typename valType >
detail::tquat< valType > pow (detail::tquat< valType > const &x, valType const &y)
template<typename valType >
valType roll (detail::tquat< valType > const &x)
template<typename valType >
detail::tvec3< valType > rotate (detail::tquat< valType > const &q, detail::tvec3< valType > const &v)
template<typename valType >
detail::tvec4< valType > rotate (detail::tquat< valType > const &q, detail::tvec4< valType > const &v)
template<typename T >
detail::tquat< T > shortMix (detail::tquat< T > const &x, detail::tquat< T > const &y, T const &a)
template<typename valType >
detail::tquat< valType > squad (detail::tquat< valType > const &q1, detail::tquat< valType > const &q2, detail::tquat< valType > const &s1, detail::tquat< valType > const &s2, valType const &h)
template<typename valType >
detail::tmat3x3< valType > toMat3 (detail::tquat< valType > const &x)
template<typename valType >
detail::tmat4x4< valType > toMat4 (detail::tquat< valType > const &x)
template<typename valType >
detail::tquat< valType > toQuat (detail::tmat4x4< valType > const &x)
template<typename valType >
detail::tquat< valType > toQuat (detail::tmat3x3< valType > const &x)
template<typename valType >
valType yaw (detail::tquat< valType > const &x)

Detailed Description

Extented quaternion types and functions.

<glm/gtx/quaternion.hpp> need to be included to use these functionalities.


Function Documentation

valType glm::gtx::quaternion::angle ( detail::tquat< valType > const &  x)

Returns the quaternion rotation angle.

From GLM_GTX_quaternion extension.

detail::tquat<valType> glm::gtx::quaternion::angleAxis ( valType const &  angle,
valType const &  x,
valType const &  y,
valType const &  z 
)

Build a quaternion from an angle and a normalized axis.

From GLM_GTX_quaternion extension.

detail::tquat<valType> glm::gtx::quaternion::angleAxis ( valType const &  angle,
detail::tvec3< valType > const &  axis 
)

Build a quaternion from an angle and a normalized axis.

From GLM_GTX_quaternion extension.

detail::tvec3<valType> glm::gtx::quaternion::axis ( detail::tquat< valType > const &  x)

Returns the q rotation axis.

From GLM_GTX_quaternion extension.

detail::tvec3<valType> glm::gtx::quaternion::cross ( detail::tquat< valType > const &  q,
detail::tvec3< valType > const &  v 
)

Compute a cross product between a quaternion and a vector.

From GLM_GTX_quaternion extension.

detail::tvec3<valType> glm::gtx::quaternion::cross ( detail::tvec3< valType > const &  v,
detail::tquat< valType > const &  q 
)

Compute a cross product between a vector and a quaternion.

From GLM_GTX_quaternion extension.

detail::tvec3<valType> glm::gtx::quaternion::eulerAngles ( detail::tquat< valType > const &  x)

Returns euler angles, yitch as x, yaw as y, roll as z.

From GLM_GTX_quaternion extension.

detail::tquat<valType> glm::gtx::quaternion::exp ( detail::tquat< valType > const &  q,
valType const &  exponent 
)

Returns a exp of a quaternion.

From GLM_GTX_quaternion extension.

valType glm::gtx::quaternion::extractRealComponent ( detail::tquat< valType > const &  q)

Extract the real component of a quaternion.

From GLM_GTX_quaternion extension.

detail::tquat<T> glm::gtx::quaternion::fastMix ( detail::tquat< T > const &  x,
detail::tquat< T > const &  y,
T const &  a 
)

Quaternion normalized linear interpolation.

From GLM_GTX_quaternion extension.

detail::tquat<valType> glm::gtx::quaternion::intermediate ( detail::tquat< valType > const &  prev,
detail::tquat< valType > const &  curr,
detail::tquat< valType > const &  next 
)

Returns an intermediate control point for squad interpolation.

From GLM_GTX_quaternion extension.

detail::tquat<valType> glm::gtx::quaternion::log ( detail::tquat< valType > const &  q)

Returns a log of a quaternion.

From GLM_GTX_quaternion extension.

valType glm::gtx::quaternion::pitch ( detail::tquat< valType > const &  x)

Returns pitch value of euler angles in degrees.

From GLM_GTX_quaternion extension.

detail::tquat<valType> glm::gtx::quaternion::pow ( detail::tquat< valType > const &  x,
valType const &  y 
)

Returns x raised to the y power.

From GLM_GTX_quaternion extension.

valType glm::gtx::quaternion::roll ( detail::tquat< valType > const &  x)

Returns roll value of euler angles in degrees.

From GLM_GTX_quaternion extension.

detail::tvec3<valType> glm::gtx::quaternion::rotate ( detail::tquat< valType > const &  q,
detail::tvec3< valType > const &  v 
)

Returns quarternion square root.

From GLM_GTX_quaternion extension. Rotates a 3 components vector by a quaternion. From GLM_GTX_transform extension.

detail::tvec4<valType> glm::gtx::quaternion::rotate ( detail::tquat< valType > const &  q,
detail::tvec4< valType > const &  v 
)

Rotates a 4 components vector by a quaternion.

From GLM_GTX_transform extension.

detail::tquat<T> glm::gtx::quaternion::shortMix ( detail::tquat< T > const &  x,
detail::tquat< T > const &  y,
T const &  a 
)

Quaternion interpolation using the rotation short path.

From GLM_GTX_quaternion extension.

detail::tquat<valType> glm::gtx::quaternion::squad ( detail::tquat< valType > const &  q1,
detail::tquat< valType > const &  q2,
detail::tquat< valType > const &  s1,
detail::tquat< valType > const &  s2,
valType const &  h 
)

Compute a point on a path according squad equation.

q1 and q2 are control points; s1 and s2 are intermediate control points. From GLM_GTX_quaternion extension.

detail::tmat3x3<valType> glm::gtx::quaternion::toMat3 ( detail::tquat< valType > const &  x)

Converts a quaternion to a 3 * 3 matrix.

From GLM_GTX_quaternion extension.

Definition at line 171 of file gtx/quaternion.hpp.

References glm::gtc::quaternion::mat3_cast().

detail::tmat4x4<valType> glm::gtx::quaternion::toMat4 ( detail::tquat< valType > const &  x)

Converts a quaternion to a 4 * 4 matrix.

From GLM_GTX_quaternion extension.

Definition at line 177 of file gtx/quaternion.hpp.

References glm::gtc::quaternion::mat4_cast().

detail::tquat<valType> glm::gtx::quaternion::toQuat ( detail::tmat4x4< valType > const &  x)

Converts a 4 * 4 matrix to a quaternion.

From GLM_GTX_quaternion extension.

Definition at line 189 of file gtx/quaternion.hpp.

References glm::gtc::quaternion::quat_cast().

detail::tquat<valType> glm::gtx::quaternion::toQuat ( detail::tmat3x3< valType > const &  x)

Converts a 3 * 3 matrix to a quaternion.

From GLM_GTX_quaternion extension.

Definition at line 183 of file gtx/quaternion.hpp.

References glm::gtc::quaternion::quat_cast().

valType glm::gtx::quaternion::yaw ( detail::tquat< valType > const &  x)

Returns yaw value of euler angles in degrees.

From GLM_GTX_quaternion extension.