This is a C++ wrapper class of deQuaternionf. More...
#include <deQuaternion.h>
Public Member Functions | |
operator deFloat * () | |
cast operator | |
operator const deFloat * () const | |
cast operator | |
deFloat & | operator[] (const deInt i) |
const deFloat & | operator[] (const deInt i) const |
DE_MATH_API void | operator= (const deQuaternion &q) |
this = q | |
DE_MATH_API deInt | operator== (const deQuaternion &q) |
DE_MATH_API void | operator+= (const deQuaternion &q) |
this[i] += q[i] | |
DE_MATH_API void | operator-= (const deQuaternion &q) |
this[i] -= q[i] | |
DE_MATH_API void | operator *= (const deFloat s) |
this[i] *= s | |
DE_MATH_API void | identity () |
this = (0, 0, 0, 1) | |
DE_MATH_API void | zero () |
this = (0, 0, 0, 0) | |
DE_MATH_API deFloat | dot (const deQuaternion &q) |
return this^T * q | |
DE_MATH_API void | normalize () |
this[i] *= (1 / sqrt(this^T * this)) | |
DE_MATH_API void | get (deVector3 &axis, deFloat &angle) const |
convert to axis-angle notation | |
DE_MATH_API void | set (const deMatrix3 &m) |
this = m | |
DE_MATH_API void | set (const deInt axis, const deFloat angle) |
this = (axis, angle) | |
DE_MATH_API void | set (const deVector3 &axis, const deFloat angle) |
this = (axis, angle) | |
DE_MATH_API void | set (const deFloat x, const deFloat y, const deFloat z, const deFloat w) |
this = (x, y, z, q) | |
DE_MATH_API void | set (const deFloat *q) |
this = [x y z q] | |
DE_MATH_API void | eulerZYX (const deVector3 &v) |
this = [x, y, z] = ZYX Euler angles | |
DE_MATH_API void | negate (const deQuaternion &q) |
this = -q | |
DE_MATH_API void | inverse (const deQuaternion &q) |
this = q^-1 | |
DE_MATH_API void | add (const deQuaternion &q1, const deQuaternion &q2) |
this = q1 + q2 | |
DE_MATH_API void | subtract (const deQuaternion &q1, const deQuaternion &q2) |
this = q1 - q2 | |
DE_MATH_API void | multiply (const deQuaternion &q1, const deQuaternion &q2) |
this = q1 * q2 | |
DE_MATH_API void | inversedMultiply (const deQuaternion &q1, const deQuaternion &q2) |
this = q1^-1 * q2 | |
DE_MATH_API void | multiplyInversed (const deQuaternion &q1, const deQuaternion &q2) |
this = q1 * q2^-1 | |
DE_MATH_API void | velocity (const deQuaternion &q, const deVector3 &omega) |
this = dq | |
DE_MATH_API void | consistentSign (const deQuaternion &q, const deQuaternion &qg) |
this = converted qg sign consitent to q | |
DE_MATH_API void | slerp (const deQuaternion &q, const deQuaternion &qg, const deFloat t, const deFloat addedSpins) |
this = SLERP (spherical linear interpolation with extra spins) | |
DE_MATH_API void | lerp (const deQuaternion &q, const deQuaternion &qg, const deFloat t) |
this = q + t * (qg - q) |
This is a C++ wrapper class of deQuaternionf.
|
this = q1 + q2
|
|
this = converted qg sign consitent to q
|
|
return this^T * q
|
|
this = [x, y, z] = ZYX Euler angles
|
|
convert to axis-angle notation
|
|
this = (0, 0, 0, 1)
|
|
this = q^-1
|
|
this = q1^-1 * q2
|
|
this = q + t * (qg - q)
|
|
this = q1 * q2
|
|
this = q1 * q2^-1
|
|
this = -q
|
|
this[i] *= (1 / sqrt(this^T * this))
|
|
this[i] *= s
|
|
cast operator
|
|
cast operator
|
|
this[i] += q[i]
|
|
this[i] -= q[i]
|
|
this = q
|
|
|
|
|
|
|
|
this = [x y z q]
|
|
this = (x, y, z, q)
|
|
this = (axis, angle)
|
|
this = (axis, angle)
|
|
this = m
|
|
this = SLERP (spherical linear interpolation with extra spins)
|
|
this = q1 - q2
|
|
this = dq
|
|
this = (0, 0, 0, 0)
|