Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Functions

NameDescription
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

NameDescription
v128 Quat

Quaternion definition.


Anchor
a66e3a8f624c7d4a8e337b0d6b3fb9e95
a66e3a8f624c7d4a8e337b0d6b3fb9e95

Matrix Geo::MConstructQuaternion

...

public: Matrix MConstructQuaternion
(
    Quat q
)

...

Construct a matrix from a quaternion.


Anchor
aea1fccf4f810a2be44262d0e5d82104f
aea1fccf4f810a2be44262d0e5d82104f

v128 Geo::QApplyToVec

...

public: v128 QApplyToVec
(
    Quat q,
    v128 v
)

...

Assumes q is unit.


Anchor
aab16348a156b24bbd3099ff3364d309e
aab16348a156b24bbd3099ff3364d309e

Quat Geo::QBuildFromEulerAngles

...

public: Quat QBuildFromEulerAngles
(
    float x,
    float y,
    float z
)

...

Converts quaternion into euler angles in XYZ order, stored in those components.


Anchor
a397d52a6e45d17be19178ba11bfb17fa
a397d52a6e45d17be19178ba11bfb17fa

Quat Geo::QBuildMatrix

...

public: Quat QBuildMatrix
(
    MatrixParam m
)

...

Construct a matrix from a quaternion.


Anchor
a9fb283daee5f9926071458ba88052e0e
a9fb283daee5f9926071458ba88052e0e

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.


Anchor
a06239bfa86fb9e114e72ec3afc3b3ac6
a06239bfa86fb9e114e72ec3afc3b3ac6

Quat Geo::QConjugate

...

public: Quat QConjugate
(
    Quat q
)

...

q* = -xyz, +w


Anchor
ae7aac5ba51578b7f0632e5a8d29e7ff0
ae7aac5ba51578b7f0632e5a8d29e7ff0

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.


Anchor
add2af507413e023030c04fd9823d5573
add2af507413e023030c04fd9823d5573

Quat Geo::QIdentity

...

public: Quat QIdentity()

...

q* = -xyz, +w


Anchor
a2e5aa298105bbcc49ffd8228ac54e7c5
a2e5aa298105bbcc49ffd8228ac54e7c5

Quat Geo::QLerp

...

public: Quat QLerp
(
    Quat a,
    Quat b,
    v128 s
)

...

Assumes a and b are unit.


Anchor
a7e0ff81dbd42227b03c1db993fa779ab
a7e0ff81dbd42227b03c1db993fa779ab

Quat Geo::QMul

...

public: Quat QMul
(
    Quat a,
    Quat b
)

...

quat multiply.


Anchor
aeb502d5e1a33cf4b7df7cb2b29a17a56
aeb502d5e1a33cf4b7df7cb2b29a17a56

Quat Geo::QSqrt

...

public: Quat QSqrt
(
    Quat q
)

...

Assumes q is unit.


Anchor
a672c5da22aa260e415b279f7687b59d2
a672c5da22aa260e415b279f7687b59d2

v128 Geo::VEulerAnglesFromQuaternion

...

public: v128 VEulerAnglesFromQuaternion
(
    Quat q
)

...

Converts quaternion into euler angles in XYZ order, stored in those components.