openTRI 0.1
|
Functions | |
triQuat * | triQuatUnit (triQuat *a) |
Make unit quaternion (0,0,0,1). | |
triQuat * | triQuatCopy (triQuat *a, const triQuat *b) |
Copy quaternion. | |
triMat4f * | triQuatToMatrix (triMat4f *a, const triQuat *b) |
Convert quaternion to matrix. | |
triVec4f * | triQuatApply (triVec4f *a, const triQuat *b, const triVec4f *c) |
Apply quaternion to vector. | |
triQuat * | triQuatAdd (triQuat *a, const triQuat *b, const triQuat *c) |
Add quaternions. | |
triQuat * | triQuatSub (triQuat *a, const triQuat *b, const triQuat *c) |
Subtract quaternions. | |
triQuat * | triQuatMul (triQuat *a, const triQuat *b, const triQuat *c) |
Multiply quaternions. | |
triFloat | triQuatInnerProduct (const triQuat *a, const triQuat *b) |
Quaternion innerproduct (dotproduct). | |
triQuat * | triQuatNLerp (triQuat *a, const triQuat *b, const triQuat *c, triFloat t) |
Normal (linear) interpolation of quaternions. | |
triQuat * | triQuatSLerp (triQuat *a, const triQuat *b, const triQuat *c, triFloat t) |
Spherical interpolation of quaternions. | |
triQuat * | triQuatSquad (triQuat *a, const triQuat *b, const triQuat *c, const triQuat *d, const triQuat *e, triFloat t) |
Cubical interpolation of quaternions. | |
triQuat * | triQuatNormalize (triQuat *a, const triQuat *b) |
Normalize quaternion. | |
triQuat * | triQuatConj (triQuat *a, const triQuat *b) |
Conjugate quaternion (-x,-y,-z,-w). | |
triQuat * | triQuatInverse (triQuat *a, const triQuat *b) |
Inverse quaternion (normalize(-x,-y,-z,w)). | |
triQuat * | triQuatFromRotate (triQuat *a, triFloat angle, const triVec4f *b) |
Make quaternion from axis rotation. | |
Make unit quaternion (0,0,0,1).
a | - Pointer to dest quaternion |
Copy quaternion.
a | - Pointer to dest quaternion |
b | - Pointer to source quaternion |
Convert quaternion to matrix.
a | - Pointer to dest matrix |
b | - Pointer to source quaternion |
Apply quaternion to vector.
a | - Pointer to dest vector |
b | - Pointer to source quaternion |
c | - Pointer to source vector |
Add quaternions.
a | - Pointer to dest quaternion |
b | - Pointer to first source quaternion |
c | - Pointer to second source quaternion |
Subtract quaternions.
a | - Pointer to dest quaternion |
b | - Pointer to first source quaternion |
c | - Pointer to second source quaternion |
Multiply quaternions.
a | - Pointer to dest quaternion |
b | - Pointer to first source quaternion |
c | - Pointer to second source quaternion |
Quaternion innerproduct (dotproduct).
a | - Pointer to first source quaternion |
b | - Pointer to second source quaternion |
Normal (linear) interpolation of quaternions.
a | - Pointer to dest quaternion |
b | - Pointer to first source quaternion |
c | - Pointer to second source quaternion |
t | - Interpolation step |
Spherical interpolation of quaternions.
a | - Pointer to dest quaternion |
b | - Pointer to first source quaternion |
c | - Pointer to second source quaternion |
t | - Interpolation step |
triQuat * triQuatSquad | ( | triQuat * | a, |
const triQuat * | b, | ||
const triQuat * | c, | ||
const triQuat * | d, | ||
const triQuat * | e, | ||
triFloat | t ) |
Cubical interpolation of quaternions.
return SLerp( SLerp( b, c, t ), SLerp( d, e, t ), 2*t*(1-t) )
a | - Pointer to dest quaternion |
b | - Pointer to first source quaternion |
c | - Pointer to second source quaternion |
d | - Pointer to third source quaternion |
e | - Pointer to fourth source quaternion |
t | - Interpolation step |
Normalize quaternion.
a | - Pointer to dest quaternion |
b | - Pointer to source quaternion |
Conjugate quaternion (-x,-y,-z,-w).
a | - Pointer to dest quaternion |
b | - Pointer to source quaternion |
Inverse quaternion (normalize(-x,-y,-z,w)).
a | - Pointer to dest quaternion |
b | - Pointer to source quaternion |