PxTransformT

Defined in include/foundation/Px.h

template<class Type>
class PxTransformT

class representing a rigid euclidean transform as a quaternion and a vector

Public Functions

inline PxTransformT()
inline explicit PxTransformT(const PxVec3T<Type> &position)
inline explicit PxTransformT(PxIDENTITY)
inline explicit PxTransformT(const PxQuatT<Type> &orientation)
inline PxTransformT(Type x, Type y, Type z, PxQuatT<Type> aQ = PxQuatT<Type>(PxIdentity))
inline PxTransformT(const PxVec3T<Type> &p0, const PxQuatT<Type> &q0)
inline explicit PxTransformT(const PxMat44T<Type> &m)
inline void operator=(const PxTransformT &other)
inline PxTransformT(const PxTransformT &other)
inline bool operator==(const PxTransformT &t) const

returns true if the two transforms are exactly equal

inline PxTransformT operator*(const PxTransformT &x) const
inline PxTransformT &operator*=(const PxTransformT &other)

Equals matrix multiplication.

inline PxTransformT getInverse() const
inline PxVec3T<Type> transform(const PxVec3T<Type> &input) const
inline PxVec3T<Type> transformInv(const PxVec3T<Type> &input) const
inline PxVec3T<Type> rotate(const PxVec3T<Type> &input) const
inline PxVec3T<Type> rotateInv(const PxVec3T<Type> &input) const
inline PxTransformT transform(const PxTransformT &src) const

Transform transform to parent (returns compound transform: first src, then *this)

inline bool isValid() const

returns true if finite and q is a unit quaternion

inline bool isSane() const

returns true if finite and quat magnitude is reasonably close to unit to allow for some accumulation of error vs isValid

inline bool isFinite() const

returns true if all elems are finite (not NAN or INF, etc.)

inline PxTransformT transformInv(const PxTransformT &src) const

Transform transform from parent (returns compound transform: first src, then this->inverse)

inline PxTransformT getNormalized() const

return a normalized transform (i.e.

one in which the quaternion has unit magnitude)

Public Members

PxQuatT<Type> q
PxVec3T<Type> p