The btTransform class supports rigid transforms with only translation and rotation and no scaling/shear. More...
#include <btTransform.h>
Public Member Functions | |
btTransform () | |
No initialization constructor. | |
btTransform (const btQuaternion &q, const btVector3 &c=btVector3(btScalar(0), btScalar(0), btScalar(0))) | |
Constructor from btQuaternion (optional btVector3 ). | |
btTransform (const btMatrix3x3 &b, const btVector3 &c=btVector3(btScalar(0), btScalar(0), btScalar(0))) | |
Constructor from btMatrix3x3 (optional btVector3). | |
btTransform (const btTransform &other) | |
Copy constructor. | |
btTransform & | operator= (const btTransform &other) |
Assignment Operator. | |
void | mult (const btTransform &t1, const btTransform &t2) |
Set the current transform as the value of the product of two transforms. | |
btVector3 | operator() (const btVector3 &x) const |
Return the transform of the vector. | |
btVector3 | operator* (const btVector3 &x) const |
Return the transform of the vector. | |
btQuaternion | operator* (const btQuaternion &q) const |
Return the transform of the btQuaternion. | |
btMatrix3x3 & | getBasis () |
Return the basis matrix for the rotation. | |
const btMatrix3x3 & | getBasis () const |
Return the basis matrix for the rotation. | |
btVector3 & | getOrigin () |
Return the origin vector translation. | |
const btVector3 & | getOrigin () const |
Return the origin vector translation. | |
btQuaternion | getRotation () const |
Return a quaternion representing the rotation. | |
void | setFromOpenGLMatrix (const btScalar *m) |
Set from an array. | |
void | getOpenGLMatrix (btScalar *m) const |
Fill an array representation. | |
void | setOrigin (const btVector3 &origin) |
Set the translational element. | |
btVector3 | invXform (const btVector3 &inVec) const |
void | setBasis (const btMatrix3x3 &basis) |
Set the rotational element by btMatrix3x3. | |
void | setRotation (const btQuaternion &q) |
Set the rotational element by btQuaternion. | |
void | setIdentity () |
Set this transformation to the identity. | |
btTransform & | operator*= (const btTransform &t) |
Multiply this Transform by another(this = this * another). | |
btTransform | inverse () const |
Return the inverse of this transform. | |
btTransform | inverseTimes (const btTransform &t) const |
Return the inverse of this transform times the other transform. | |
btTransform | operator* (const btTransform &t) const |
Return the product of this transform and the other. | |
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 btTransform & | getIdentity () |
Return an identity transform. | |
Private Attributes | |
btMatrix3x3 | m_basis |
Storage for the rotation. | |
btVector3 | m_origin |
Storage for the translation. |
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.
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)) | |||
) | [inline, explicit] |
Constructor from btQuaternion (optional btVector3 ).
q | Rotation from quaternion | |
c | Translation 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)) | |||
) | [inline, explicit] |
Constructor from btMatrix3x3 (optional btVector3).
b | Rotation from Matrix | |
c | Translation 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.
void btTransform::deSerialize | ( | const struct btTransformData & | dataIn | ) |
void btTransform::deSerializeDouble | ( | const struct btTransformDoubleData & | dataIn | ) |
void btTransform::deSerializeFloat | ( | const struct btTransformFloatData & | dataIn | ) |
const btMatrix3x3& btTransform::getBasis | ( | ) | const [inline] |
Return the basis matrix for the rotation.
Definition at line 114 of file btTransform.h.
btMatrix3x3& btTransform::getBasis | ( | ) | [inline] |
Return the basis matrix for the rotation.
Definition at line 112 of file btTransform.h.
static const btTransform& btTransform::getIdentity | ( | ) | [inline, static] |
Return an identity transform.
Definition at line 203 of file btTransform.h.
void btTransform::getOpenGLMatrix | ( | btScalar * | m | ) | const [inline] |
Fill an array representation.
m | A pointer to a 15 element array (12 rotation(row major padded on the right by 1), and 3 translation |
Definition at line 139 of file btTransform.h.
const btVector3& btTransform::getOrigin | ( | ) | const [inline] |
Return the origin vector translation.
Definition at line 119 of file btTransform.h.
btVector3& btTransform::getOrigin | ( | ) | [inline] |
Return the origin vector translation.
Definition at line 117 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.
t | The other transform return this.inverse() * the other |
Definition at line 230 of file btTransform.h.
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.
t1 | Transform 1 | |
t2 | Transform 2 This = Transform1 * Transform2 |
Definition at line 81 of file btTransform.h.
Return the transform of the vector.
Definition at line 94 of file btTransform.h.
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).
t | The 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.
m | A pointer to a 15 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.
origin | The 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.
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.