Bullet Collision Detection & Physics Library
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
btTransform Class Reference

The btTransform class supports rigid transforms with only translation and rotation and no scaling/shear. More...

#include <btTransform.h>

Collaboration diagram for btTransform:
Collaboration graph
[legend]

Public Member Functions

 btTransform ()
 No initialization constructor. More...
 
 btTransform (const btQuaternion &q, const btVector3 &c=btVector3(btScalar(0), btScalar(0), btScalar(0)))
 Constructor from btQuaternion (optional btVector3 ) More...
 
 btTransform (const btMatrix3x3 &b, const btVector3 &c=btVector3(btScalar(0), btScalar(0), btScalar(0)))
 Constructor from btMatrix3x3 (optional btVector3) More...
 
 btTransform (const btTransform &other)
 Copy constructor. More...
 
btTransformoperator= (const btTransform &other)
 Assignment Operator. More...
 
void mult (const btTransform &t1, const btTransform &t2)
 Set the current transform as the value of the product of two transforms. More...
 
btVector3 operator() (const btVector3 &x) const
 Return the transform of the vector. More...
 
btVector3 operator* (const btVector3 &x) const
 Return the transform of the vector. More...
 
btQuaternion operator* (const btQuaternion &q) const
 Return the transform of the btQuaternion. More...
 
btMatrix3x3getBasis ()
 Return the basis matrix for the rotation. More...
 
const btMatrix3x3getBasis () const
 Return the basis matrix for the rotation. More...
 
btVector3getOrigin ()
 Return the origin vector translation. More...
 
const btVector3getOrigin () const
 Return the origin vector translation. More...
 
btQuaternion getRotation () const
 Return a quaternion representing the rotation. More...
 
void setFromOpenGLMatrix (const btScalar *m)
 Set from an array. More...
 
void getOpenGLMatrix (btScalar *m) const
 Fill an array representation. More...
 
void setOrigin (const btVector3 &origin)
 Set the translational element. More...
 
btVector3 invXform (const btVector3 &inVec) const
 
void setBasis (const btMatrix3x3 &basis)
 Set the rotational element by btMatrix3x3. More...
 
void setRotation (const btQuaternion &q)
 Set the rotational element by btQuaternion. More...
 
void setIdentity ()
 Set this transformation to the identity. More...
 
btTransformoperator*= (const btTransform &t)
 Multiply this Transform by another(this = this * another) More...
 
btTransform inverse () const
 Return the inverse of this transform. More...
 
btTransform inverseTimes (const btTransform &t) const
 Return the inverse of this transform times the other transform. More...
 
btTransform operator* (const btTransform &t) const
 Return the product of this transform and the other. More...
 
void serialize (struct btTransformData &dataOut) const
 
void serializeFloat (struct btTransformFloatData &dataOut) const
 
void deSerialize (const struct btTransformData &dataIn)
 
void deSerializeDouble (const struct btTransformDoubleData &dataIn)
 
void deSerializeFloat (const struct btTransformFloatData &dataIn)
 

Static Public Member Functions

static const btTransformgetIdentity ()
 Return an identity transform. More...
 

Private Attributes

btMatrix3x3 m_basis
 Storage for the rotation. More...
 
btVector3 m_origin
 Storage for the translation. More...
 

Detailed Description

The btTransform class supports rigid transforms with only translation and rotation and no scaling/shear.

It can be used in combination with btVector3, btQuaternion and btMatrix3x3 linear algebra classes.

Definition at line 34 of file btTransform.h.

Constructor & Destructor Documentation

btTransform::btTransform ( )
inline

No initialization constructor.

Definition at line 44 of file btTransform.h.

btTransform::btTransform ( const btQuaternion q,
const btVector3 c = btVector3(btScalar(0), btScalar(0), btScalar(0)) 
)
inlineexplicit

Constructor from btQuaternion (optional btVector3 )

Parameters
qRotation from quaternion
cTranslation from Vector (default 0,0,0)

Definition at line 48 of file btTransform.h.

btTransform::btTransform ( const btMatrix3x3 b,
const btVector3 c = btVector3(btScalar(0), btScalar(0), btScalar(0)) 
)
inlineexplicit

Constructor from btMatrix3x3 (optional btVector3)

Parameters
bRotation from Matrix
cTranslation from Vector default (0,0,0)

Definition at line 57 of file btTransform.h.

btTransform::btTransform ( const btTransform other)
inline

Copy constructor.

Definition at line 63 of file btTransform.h.

Member Function Documentation

void btTransform::deSerialize ( const struct btTransformData dataIn)
inline

Definition at line 280 of file btTransform.h.

void btTransform::deSerializeDouble ( const struct btTransformDoubleData dataIn)
inline

Definition at line 292 of file btTransform.h.

void btTransform::deSerializeFloat ( const struct btTransformFloatData dataIn)
inline

Definition at line 286 of file btTransform.h.

btMatrix3x3& btTransform::getBasis ( )
inline

Return the basis matrix for the rotation.

Definition at line 112 of file btTransform.h.

const btMatrix3x3& btTransform::getBasis ( ) const
inline

Return the basis matrix for the rotation.

Definition at line 114 of file btTransform.h.

static const btTransform& btTransform::getIdentity ( )
inlinestatic

Return an identity transform.

Definition at line 203 of file btTransform.h.

void btTransform::getOpenGLMatrix ( btScalar m) const
inline

Fill an array representation.

Parameters
mA pointer to a 16 element array (12 rotation(row major padded on the right by 1), and 3 translation

Definition at line 139 of file btTransform.h.

btVector3& btTransform::getOrigin ( )
inline

Return the origin vector translation.

Definition at line 117 of file btTransform.h.

const btVector3& btTransform::getOrigin ( ) const
inline

Return the origin vector translation.

Definition at line 119 of file btTransform.h.

btQuaternion btTransform::getRotation ( ) const
inline

Return a quaternion representing the rotation.

Definition at line 122 of file btTransform.h.

btTransform btTransform::inverse ( ) const
inline

Return the inverse of this transform.

Definition at line 188 of file btTransform.h.

btTransform btTransform::inverseTimes ( const btTransform t) const
inline

Return the inverse of this transform times the other transform.

Parameters
tThe other transform return this.inverse() * the other

Definition at line 230 of file btTransform.h.

btVector3 btTransform::invXform ( const btVector3 inVec) const
inline

Definition at line 223 of file btTransform.h.

void btTransform::mult ( const btTransform t1,
const btTransform t2 
)
inline

Set the current transform as the value of the product of two transforms.

Parameters
t1Transform 1
t2Transform 2 This = Transform1 * Transform2

Definition at line 81 of file btTransform.h.

btVector3 btTransform::operator() ( const btVector3 x) const
inline

Return the transform of the vector.

Definition at line 94 of file btTransform.h.

btVector3 btTransform::operator* ( const btVector3 x) const
inline

Return the transform of the vector.

Definition at line 100 of file btTransform.h.

btQuaternion btTransform::operator* ( const btQuaternion q) const
inline

Return the transform of the btQuaternion.

Definition at line 106 of file btTransform.h.

btTransform btTransform::operator* ( const btTransform t) const
inline

Return the product of this transform and the other.

Definition at line 238 of file btTransform.h.

btTransform& btTransform::operator*= ( const btTransform t)
inline

Multiply this Transform by another(this = this * another)

Parameters
tThe other transform

Definition at line 180 of file btTransform.h.

btTransform& btTransform::operator= ( const btTransform other)
inline

Assignment Operator.

Definition at line 69 of file btTransform.h.

void btTransform::serialize ( struct btTransformData dataOut) const
inline

Definition at line 267 of file btTransform.h.

void btTransform::serializeFloat ( struct btTransformFloatData dataOut) const
inline

Definition at line 273 of file btTransform.h.

void btTransform::setBasis ( const btMatrix3x3 basis)
inline

Set the rotational element by btMatrix3x3.

Definition at line 159 of file btTransform.h.

void btTransform::setFromOpenGLMatrix ( const btScalar m)
inline

Set from an array.

Parameters
mA pointer to a 16 element array (12 rotation(row major padded on the right by 1), and 3 translation

Definition at line 131 of file btTransform.h.

void btTransform::setIdentity ( )
inline

Set this transformation to the identity.

Definition at line 172 of file btTransform.h.

void btTransform::setOrigin ( const btVector3 origin)
inline

Set the translational element.

Parameters
originThe vector to set the translation to

Definition at line 150 of file btTransform.h.

void btTransform::setRotation ( const btQuaternion q)
inline

Set the rotational element by btQuaternion.

Definition at line 165 of file btTransform.h.

Member Data Documentation

btMatrix3x3 btTransform::m_basis
private

Storage for the rotation.

Definition at line 37 of file btTransform.h.

btVector3 btTransform::m_origin
private

Storage for the translation.

Definition at line 39 of file btTransform.h.


The documentation for this class was generated from the following file: