Blender V5.0
btQuaternion.h File Reference
#include "btVector3.h"
#include "btQuadWord.h"

Go to the source code of this file.

Classes

class  btQuaternion
 The btQuaternion implements quaternion to perform linear algebra rotations in combination with btMatrix3x3, btVector3 and btTransform. More...
struct  btQuaternionFloatData
struct  btQuaternionDoubleData

Macros

#define btQuaternionData   btQuaternionFloatData
#define btQuaternionDataName   "btQuaternionFloatData"

Functions

SIMD_FORCE_INLINE btQuaternion operator* (const btQuaternion &q1, const btQuaternion &q2)
 Return the product of two quaternions.
SIMD_FORCE_INLINE btQuaternion operator* (const btQuaternion &q, const btVector3 &w)
SIMD_FORCE_INLINE btQuaternion operator* (const btVector3 &w, const btQuaternion &q)
SIMD_FORCE_INLINE btScalar dot (const btQuaternion &q1, const btQuaternion &q2)
 Calculate the dot product between two quaternions.
SIMD_FORCE_INLINE btScalar length (const btQuaternion &q)
 Return the length of a quaternion.
SIMD_FORCE_INLINE btScalar btAngle (const btQuaternion &q1, const btQuaternion &q2)
 Return the angle between two quaternions.
SIMD_FORCE_INLINE btQuaternion inverse (const btQuaternion &q)
 Return the inverse of a quaternion.
SIMD_FORCE_INLINE btQuaternion slerp (const btQuaternion &q1, const btQuaternion &q2, const btScalar &t)
 Return the result of spherical linear interpolation betwen two quaternions.
SIMD_FORCE_INLINE btVector3 quatRotate (const btQuaternion &rotation, const btVector3 &v)
SIMD_FORCE_INLINE btQuaternion shortestArcQuat (const btVector3 &v0, const btVector3 &v1)
SIMD_FORCE_INLINE btQuaternion shortestArcQuatNormalize2 (btVector3 &v0, btVector3 &v1)

Macro Definition Documentation

◆ btQuaternionData

#define btQuaternionData   btQuaternionFloatData

Definition at line 25 of file btQuaternion.h.

Referenced by btQuaternion::serialize().

◆ btQuaternionDataName

#define btQuaternionDataName   "btQuaternionFloatData"

Definition at line 26 of file btQuaternion.h.

Function Documentation

◆ btAngle()

SIMD_FORCE_INLINE btScalar btAngle ( const btQuaternion & q1,
const btQuaternion & q2 )

Return the angle between two quaternions.

Definition at line 902 of file btQuaternion.h.

References btQuaternion::angle().

Referenced by calculateNormalCone().

◆ dot()

SIMD_FORCE_INLINE btScalar dot ( const btQuaternion & q1,
const btQuaternion & q2 )

Calculate the dot product between two quaternions.

Definition at line 888 of file btQuaternion.h.

References btQuaternion::dot().

◆ inverse()

Return the inverse of a quaternion.

Definition at line 909 of file btQuaternion.h.

References btQuaternion::inverse().

◆ length()

Return the length of a quaternion.

Definition at line 895 of file btQuaternion.h.

References btQuaternion::length().

◆ operator*() [1/3]

SIMD_FORCE_INLINE btQuaternion operator* ( const btQuaternion & q,
const btVector3 & w )

Definition at line 721 of file btQuaternion.h.

References A1, A2, btVector3, and w().

◆ operator*() [2/3]

SIMD_FORCE_INLINE btQuaternion operator* ( const btQuaternion & q1,
const btQuaternion & q2 )

Return the product of two quaternions.

Definition at line 633 of file btQuaternion.h.

References A0, A1, and A2.

◆ operator*() [3/3]

SIMD_FORCE_INLINE btQuaternion operator* ( const btVector3 & w,
const btQuaternion & q )

Definition at line 804 of file btQuaternion.h.

References A1, A2, btVector3, and w().

◆ quatRotate()

◆ shortestArcQuat()

◆ shortestArcQuatNormalize2()

SIMD_FORCE_INLINE btQuaternion shortestArcQuatNormalize2 ( btVector3 & v0,
btVector3 & v1 )

Definition at line 959 of file btQuaternion.h.

References btVector3, and shortestArcQuat().

Referenced by getRotation().

◆ slerp()

SIMD_FORCE_INLINE btQuaternion slerp ( const btQuaternion & q1,
const btQuaternion & q2,
const btScalar & t )

Return the result of spherical linear interpolation betwen two quaternions.

Parameters
q1The first quaternion
q2The second quaternion
tThe ration between q1 and q2. t = 0 return q1, t=1 returns q2 Slerp assumes constant velocity between positions.

Definition at line 920 of file btQuaternion.h.

References btQuaternion::slerp().