This is the documentation for Enlighten.
module Quaternions
Functions
| Name | Description | 
|---|---|
| MConstructQuaternion(Quat) | Construct a matrix from a quaternion. | 
| QApplyToVec(Quat, v128) | Assumes q is unit. | 
| QBuildFromEulerAngles(float, float, float) | Converts quaternion into euler angles in XYZ order, stored in those components. | 
| QBuildMatrix(MatrixParam) | Construct a matrix from a quaternion. | 
| QClosestSlerp(Quat, Quat, v128) | Flips inputs to be on the same hyper-hemisphere. Use QFullSlerp if desired. | 
| QConjugate(Quat) | q* = -xyz, +w | 
| QFullSlerp(Quat, Quat, v128) | Does not flip inputs to be on the same hyper-hemisphere. Use QClosestSlerp if desired. | 
| QIdentity() | q* = -xyz, +w | 
| QLerp(Quat, Quat, v128) | Assumes a and b are unit. | 
| QMul(Quat, Quat) | quat multiply. | 
| QSqrt(Quat) | Assumes q is unit. | 
| VEulerAnglesFromQuaternion(Quat) | Converts quaternion into euler angles in XYZ order, stored in those components. | 
Typedefs
| Name | Description | 
|---|---|
| v128 Quat | Quaternion definition. | 
Matrix Geo::MConstructQuaternion
public: Matrix MConstructQuaternion
(
    Quat q
)
Construct a matrix from a quaternion.
v128 Geo::QApplyToVec
public: v128 QApplyToVec
(
    Quat q,
    v128 v
)
Assumes q is unit.
Quat Geo::QBuildFromEulerAngles
public: Quat QBuildFromEulerAngles
(
    float x,
    float y,
    float z
)
Converts quaternion into euler angles in XYZ order, stored in those components.
Quat Geo::QBuildMatrix
public: Quat QBuildMatrix
(
    MatrixParam m
)
Construct a matrix from a quaternion.
Quat Geo::QClosestSlerp
public: Quat QClosestSlerp
(
    Quat a,
    Quat b,
    v128 s
)
Flips inputs to be on the same hyper-hemisphere. Use QFullSlerp if desired.
Quat Geo::QConjugate
public: Quat QConjugate
(
    Quat q
)
q* = -xyz, +w
Quat Geo::QFullSlerp
public: Quat QFullSlerp
(
    Quat a,
    Quat b,
    v128 s
)
Does not flip inputs to be on the same hyper-hemisphere. Use QClosestSlerp if desired.
Quat Geo::QIdentity
public: Quat QIdentity()
q* = -xyz, +w
Quat Geo::QLerp
public: Quat QLerp
(
    Quat a,
    Quat b,
    v128 s
)
Assumes a and b are unit.
Quat Geo::QMul
public: Quat QMul
(
    Quat a,
    Quat b
)
quat multiply.
Quat Geo::QSqrt
public: Quat QSqrt
(
    Quat q
)
Assumes q is unit.
v128 Geo::VEulerAnglesFromQuaternion
public: v128 VEulerAnglesFromQuaternion
(
    Quat q
)
Converts quaternion into euler angles in XYZ order, stored in those components.