QuatTNS_tpl

Quaternion with translation vector and non-uniform scale. More...

#include

Public Member Functions

ILINE QuatTNS_tpl (type_identity)
ILINE QuatTNS_tpl (const Quat_tpl< F > &quat, const Vec3_tpl< F > &trans, const Diag33_tpl< F > &scale)
template
ILINE QuatTNS_tpl (const QuatTS_tpl< F1 > &qts)
ILINE QuatTNS_tpl (const QuatT_tpl< F > &qp)
ILINE void SetIdentity ()
ILINE QuatTNS_tpl (const Matrix34_tpl< F > &m)
void Invert ()
QuatTNS_tpl< F > GetInverted () const
ILINE void SetNLerp (const QuatTNS_tpl< F > &p, const QuatTNS_tpl< F > &tq, F ti)
bool IsValid (f32 e=VEC_EPSILON) const
ILINE Vec3_tpl< F > GetColumn0 () const
ILINE Vec3_tpl< F > GetColumn1 () const
ILINE Vec3_tpl< F > GetColumn2 () const
ILINE Vec3_tpl< F > GetColumn3 () const
ILINE Vec3_tpl< F > GetRow0 () const
ILINE Vec3_tpl< F > GetRow1 () const
ILINE Vec3_tpl< F > GetRow2 () const

Static Public Member Functions

static ILINE QuatTNS_tpl< F > CreateNLerp (const QuatTNS_tpl< F > &p, const QuatTNS_tpl< F > &q, F t)
static ILINE bool IsEquivalent (const QuatTNS_tpl< F > &qts1, const QuatTNS_tpl< F > &qts2, f32 qe=RAD_EPSILON, f32 ve=VEC_EPSILON)

Public Attributes

Quat_tpl< F > q
Vec3_tpl< F > t
Diag33_tpl< F > s
AUTO_STRUCT_INFO

Detailed Description

template struct QuatTNS_tpl< F >

Quaternion with translation vector and non-uniform scale.

Member Function Documentation

◆ SetNLerp()

template
ILINE void QuatTNS_tpl< F >::SetNLerp ( const QuatTNS_tpl< F > & p,
const QuatTNS_tpl< F > & tq,
F ti
)
inline

Linear-interpolation between quaternions (nlerp). Example: CQuaternion result,p,q; result=qlerp( p, q, 0.5f );