btRigidBody Class Reference

#include <btRigidBody.h>

List of all members.

Classes

struct  btRigidBodyConstructionInfo

Public Member Functions

void addConstraintRef (btTypedConstraint *c)
void applyCentralForce (const btVector3 &force)
void applyCentralImpulse (const btVector3 &impulse)
void applyDamping (btScalar timeStep)
void applyForce (const btVector3 &force, const btVector3 &rel_pos)
void applyGravity ()
void applyImpulse (const btVector3 &impulse, const btVector3 &rel_pos)
void applyTorque (const btVector3 &torque)
void applyTorqueImpulse (const btVector3 &torque)
 btRigidBody (btScalar mass, btMotionState *motionState, btCollisionShape *collisionShape, const btVector3 &localInertia=btVector3(0, 0, 0))
 btRigidBody (const btRigidBodyConstructionInfo &constructionInfo)
 btRigidBody constructor using construction info
virtual int calculateSerializeBufferSize () const
virtual bool checkCollideWithOverride (btCollisionObject *co)
void clearForces ()
SIMD_FORCE_INLINE btScalar computeAngularImpulseDenominator (const btVector3 &axis) const
SIMD_FORCE_INLINE btScalar computeImpulseDenominator (const btVector3 &pos, const btVector3 &normal) const
void getAabb (btVector3 &aabbMin, btVector3 &aabbMax) const
btScalar getAngularDamping () const
const btVector3 & getAngularFactor () const
btScalar getAngularSleepingThreshold () const
const btVector3 & getAngularVelocity () const
btBroadphaseProxy * getBroadphaseProxy ()
const btBroadphaseProxy * getBroadphaseProxy () const
const btVector3 & getCenterOfMassPosition () const
const btTransformgetCenterOfMassTransform () const
SIMD_FORCE_INLINE
btCollisionShape
getCollisionShape ()
SIMD_FORCE_INLINE const
btCollisionShape
getCollisionShape () const
btTypedConstraintgetConstraintRef (int index)
int getFlags () const
const btVector3 & getGravity () const
const btVector3 & getInvInertiaDiagLocal () const
const btMatrix3x3getInvInertiaTensorWorld () const
btScalar getInvMass () const
btScalar getLinearDamping () const
const btVector3 & getLinearFactor () const
btScalar getLinearSleepingThreshold () const
const btVector3 & getLinearVelocity () const
const btMotionStategetMotionState () const
btMotionStategetMotionState ()
int getNumConstraintRefs ()
btQuaternion getOrientation () const
const btVector3 & getTotalForce ()
const btVector3 & getTotalTorque ()
btVector3 getVelocityInLocalPoint (const btVector3 &rel_pos) const
void integrateVelocities (btScalar step)
SIMD_FORCE_INLINE void internalApplyImpulse (const btVector3 &linearComponent, const btVector3 &angularComponent, const btScalar impulseMagnitude)
SIMD_FORCE_INLINE void internalApplyPushImpulse (const btVector3 &linearComponent, const btVector3 &angularComponent, btScalar impulseMagnitude)
const btVector3 & internalGetAngularFactor () const
SIMD_FORCE_INLINE void internalGetAngularVelocity (btVector3 &angVel) const
btVector3 & internalGetDeltaAngularVelocity ()
btVector3 & internalGetDeltaLinearVelocity ()
const btVector3 & internalGetInvMass () const
btVector3 & internalGetPushVelocity ()
btVector3 & internalGetTurnVelocity ()
SIMD_FORCE_INLINE void internalGetVelocityInLocalPointObsolete (const btVector3 &rel_pos, btVector3 &velocity) const
void internalWritebackVelocity (btScalar timeStep)
void internalWritebackVelocity ()
bool isInWorld () const
void predictIntegratedTransform (btScalar step, btTransform &predictedTransform)
 continuous collision detection needs prediction
void proceedToTransform (const btTransform &newTrans)
void removeConstraintRef (btTypedConstraint *c)
void saveKinematicState (btScalar step)
virtual const char * serialize (void *dataBuffer, class btSerializer *serializer) const
 fills the dataBuffer and returns the struct name (and 0 on failure)
virtual void serializeSingleObject (class btSerializer *serializer) const
void setAngularFactor (btScalar angFac)
void setAngularFactor (const btVector3 &angFac)
void setAngularVelocity (const btVector3 &ang_vel)
void setCenterOfMassTransform (const btTransform &xform)
void setDamping (btScalar lin_damping, btScalar ang_damping)
void setFlags (int flags)
void setGravity (const btVector3 &acceleration)
void setInvInertiaDiagLocal (const btVector3 &diagInvInertia)
void setLinearFactor (const btVector3 &linearFactor)
void setLinearVelocity (const btVector3 &lin_vel)
void setMassProps (btScalar mass, const btVector3 &inertia)
void setMotionState (btMotionState *motionState)
void setNewBroadphaseProxy (btBroadphaseProxy *broadphaseProxy)
void setSleepingThresholds (btScalar linear, btScalar angular)
void translate (const btVector3 &v)
SIMD_FORCE_INLINE void updateDeactivation (btScalar timeStep)
void updateInertiaTensor ()
SIMD_FORCE_INLINE bool wantsSleeping ()
virtual ~btRigidBody ()

Static Public Member Functions

static btRigidBodyupcast (btCollisionObject *colObj)
static const btRigidBodyupcast (const btCollisionObject *colObj)

Public Attributes

int m_contactSolverType
int m_frictionSolverType

Protected Member Functions

 ATTRIBUTE_ALIGNED64 (btVector3 m_deltaLinearVelocity)
void setupRigidBody (const btRigidBodyConstructionInfo &constructionInfo)
 setupRigidBody is only used internally by the constructor

Protected Attributes

btVector3 m_angularFactor
btVector3 m_deltaAngularVelocity
btVector3 m_invMass
btVector3 m_pushVelocity
btVector3 m_turnVelocity

Private Attributes

btScalar m_additionalAngularDampingFactor
btScalar m_additionalAngularDampingThresholdSqr
bool m_additionalDamping
btScalar m_additionalDampingFactor
btScalar m_additionalLinearDampingThresholdSqr
btScalar m_angularDamping
btScalar m_angularSleepingThreshold
btVector3 m_angularVelocity
btAlignedObjectArray
< btTypedConstraint * > 
m_constraintRefs
int m_debugBodyId
btVector3 m_gravity
btVector3 m_gravity_acceleration
btScalar m_inverseMass
btVector3 m_invInertiaLocal
btMatrix3x3 m_invInertiaTensorWorld
btScalar m_linearDamping
btVector3 m_linearFactor
btScalar m_linearSleepingThreshold
btVector3 m_linearVelocity
btMotionStatem_optionalMotionState
int m_rigidbodyFlags
btVector3 m_totalForce
btVector3 m_totalTorque

Detailed Description

The btRigidBody is the main class for rigid body objects. It is derived from btCollisionObject, so it keeps a pointer to a btCollisionShape. It is recommended for performance and memory use to share btCollisionShape objects whenever possible. There are 3 types of rigid bodies:

Definition at line 55 of file btRigidBody.h.


Constructor & Destructor Documentation

btRigidBody::btRigidBody ( const btRigidBodyConstructionInfo constructionInfo  ) 

btRigidBody constructor using construction info

btRigidBody::btRigidBody ( btScalar  mass,
btMotionState motionState,
btCollisionShape collisionShape,
const btVector3 &  localInertia = btVector3(0, 0, 0) 
)

btRigidBody constructor for backwards compatibility. To specify friction (etc) during rigid body construction, please use the other constructor (using btRigidBodyConstructionInfo)

virtual btRigidBody::~btRigidBody (  )  [inline, virtual]

Definition at line 171 of file btRigidBody.h.


Member Function Documentation

void btRigidBody::addConstraintRef ( btTypedConstraint c  ) 
void btRigidBody::applyCentralForce ( const btVector3 &  force  )  [inline]

Definition at line 268 of file btRigidBody.h.

void btRigidBody::applyCentralImpulse ( const btVector3 &  impulse  )  [inline]

Definition at line 310 of file btRigidBody.h.

void btRigidBody::applyDamping ( btScalar  timeStep  ) 
void btRigidBody::applyForce ( const btVector3 &  force,
const btVector3 &  rel_pos 
) [inline]

Definition at line 304 of file btRigidBody.h.

void btRigidBody::applyGravity (  ) 
void btRigidBody::applyImpulse ( const btVector3 &  impulse,
const btVector3 &  rel_pos 
) [inline]

Definition at line 320 of file btRigidBody.h.

void btRigidBody::applyTorque ( const btVector3 &  torque  )  [inline]

Definition at line 299 of file btRigidBody.h.

void btRigidBody::applyTorqueImpulse ( const btVector3 &  torque  )  [inline]

Definition at line 315 of file btRigidBody.h.

btRigidBody::ATTRIBUTE_ALIGNED64 ( btVector3  m_deltaLinearVelocity  )  [protected]
virtual int btRigidBody::calculateSerializeBufferSize (  )  const [virtual]
virtual bool btRigidBody::checkCollideWithOverride ( btCollisionObject *  co  )  [virtual]
void btRigidBody::clearForces (  )  [inline]

Definition at line 332 of file btRigidBody.h.

SIMD_FORCE_INLINE btScalar btRigidBody::computeAngularImpulseDenominator ( const btVector3 &  axis  )  const [inline]

Definition at line 399 of file btRigidBody.h.

SIMD_FORCE_INLINE btScalar btRigidBody::computeImpulseDenominator ( const btVector3 &  pos,
const btVector3 &  normal 
) const [inline]

Definition at line 387 of file btRigidBody.h.

void btRigidBody::getAabb ( btVector3 &  aabbMin,
btVector3 &  aabbMax 
) const
btScalar btRigidBody::getAngularDamping (  )  const [inline]

Definition at line 223 of file btRigidBody.h.

const btVector3& btRigidBody::getAngularFactor (  )  const [inline]

Definition at line 486 of file btRigidBody.h.

btScalar btRigidBody::getAngularSleepingThreshold (  )  const [inline]

Definition at line 233 of file btRigidBody.h.

const btVector3& btRigidBody::getAngularVelocity (  )  const [inline]

Definition at line 351 of file btRigidBody.h.

btBroadphaseProxy* btRigidBody::getBroadphaseProxy (  )  [inline]

Definition at line 448 of file btRigidBody.h.

const btBroadphaseProxy* btRigidBody::getBroadphaseProxy (  )  const [inline]

Definition at line 444 of file btRigidBody.h.

const btVector3& btRigidBody::getCenterOfMassPosition (  )  const [inline]

Definition at line 340 of file btRigidBody.h.

const btTransform& btRigidBody::getCenterOfMassTransform (  )  const [inline]

Definition at line 345 of file btRigidBody.h.

SIMD_FORCE_INLINE btCollisionShape* btRigidBody::getCollisionShape (  )  [inline]

Definition at line 244 of file btRigidBody.h.

SIMD_FORCE_INLINE const btCollisionShape* btRigidBody::getCollisionShape (  )  const [inline]

Definition at line 240 of file btRigidBody.h.

btTypedConstraint* btRigidBody::getConstraintRef ( int  index  )  [inline]

Definition at line 502 of file btRigidBody.h.

int btRigidBody::getFlags (  )  const [inline]

Definition at line 517 of file btRigidBody.h.

const btVector3& btRigidBody::getGravity (  )  const [inline]

Definition at line 211 of file btRigidBody.h.

const btVector3& btRigidBody::getInvInertiaDiagLocal (  )  const [inline]

Definition at line 283 of file btRigidBody.h.

const btMatrix3x3& btRigidBody::getInvInertiaTensorWorld (  )  const [inline]

Definition at line 260 of file btRigidBody.h.

btScalar btRigidBody::getInvMass (  )  const [inline]

Definition at line 259 of file btRigidBody.h.

btScalar btRigidBody::getLinearDamping (  )  const [inline]

Definition at line 218 of file btRigidBody.h.

const btVector3& btRigidBody::getLinearFactor (  )  const [inline]

Definition at line 250 of file btRigidBody.h.

btScalar btRigidBody::getLinearSleepingThreshold (  )  const [inline]

Definition at line 228 of file btRigidBody.h.

const btVector3& btRigidBody::getLinearVelocity (  )  const [inline]

Definition at line 348 of file btRigidBody.h.

const btMotionState* btRigidBody::getMotionState (  )  const [inline]

Definition at line 462 of file btRigidBody.h.

btMotionState* btRigidBody::getMotionState (  )  [inline]

Definition at line 458 of file btRigidBody.h.

int btRigidBody::getNumConstraintRefs (  )  [inline]

Definition at line 507 of file btRigidBody.h.

btQuaternion btRigidBody::getOrientation (  )  const
const btVector3& btRigidBody::getTotalForce (  )  [inline]

Definition at line 273 of file btRigidBody.h.

const btVector3& btRigidBody::getTotalTorque (  )  [inline]

Definition at line 278 of file btRigidBody.h.

btVector3 btRigidBody::getVelocityInLocalPoint ( const btVector3 &  rel_pos  )  const [inline]

Definition at line 366 of file btRigidBody.h.

void btRigidBody::integrateVelocities ( btScalar  step  ) 
SIMD_FORCE_INLINE void btRigidBody::internalApplyImpulse ( const btVector3 &  linearComponent,
const btVector3 &  angularComponent,
const btScalar  impulseMagnitude 
) [inline]

Definition at line 568 of file btRigidBody.h.

SIMD_FORCE_INLINE void btRigidBody::internalApplyPushImpulse ( const btVector3 &  linearComponent,
const btVector3 &  angularComponent,
btScalar  impulseMagnitude 
) [inline]

Definition at line 577 of file btRigidBody.h.

const btVector3& btRigidBody::internalGetAngularFactor (  )  const [inline]

Definition at line 536 of file btRigidBody.h.

SIMD_FORCE_INLINE void btRigidBody::internalGetAngularVelocity ( btVector3 &  angVel  )  const [inline]

Definition at line 561 of file btRigidBody.h.

btVector3& btRigidBody::internalGetDeltaAngularVelocity (  )  [inline]

Definition at line 531 of file btRigidBody.h.

btVector3& btRigidBody::internalGetDeltaLinearVelocity (  )  [inline]

some internal methods, don't use them

Definition at line 526 of file btRigidBody.h.

const btVector3& btRigidBody::internalGetInvMass (  )  const [inline]

Definition at line 541 of file btRigidBody.h.

btVector3& btRigidBody::internalGetPushVelocity (  )  [inline]

Definition at line 546 of file btRigidBody.h.

btVector3& btRigidBody::internalGetTurnVelocity (  )  [inline]

Definition at line 551 of file btRigidBody.h.

SIMD_FORCE_INLINE void btRigidBody::internalGetVelocityInLocalPointObsolete ( const btVector3 &  rel_pos,
btVector3 &  velocity 
) const [inline]

Definition at line 556 of file btRigidBody.h.

void btRigidBody::internalWritebackVelocity ( btScalar  timeStep  ) 
void btRigidBody::internalWritebackVelocity (  )  [inline]

Definition at line 586 of file btRigidBody.h.

bool btRigidBody::isInWorld (  )  const [inline]

Definition at line 492 of file btRigidBody.h.

void btRigidBody::predictIntegratedTransform ( btScalar  step,
btTransform predictedTransform 
)

continuous collision detection needs prediction

void btRigidBody::proceedToTransform ( const btTransform newTrans  ) 
void btRigidBody::removeConstraintRef ( btTypedConstraint c  ) 
void btRigidBody::saveKinematicState ( btScalar  step  ) 
virtual const char* btRigidBody::serialize ( void *  dataBuffer,
class btSerializer serializer 
) const [virtual]

fills the dataBuffer and returns the struct name (and 0 on failure)

virtual void btRigidBody::serializeSingleObject ( class btSerializer serializer  )  const [virtual]
void btRigidBody::setAngularFactor ( btScalar  angFac  )  [inline]

Definition at line 482 of file btRigidBody.h.

void btRigidBody::setAngularFactor ( const btVector3 &  angFac  )  [inline]

Definition at line 477 of file btRigidBody.h.

void btRigidBody::setAngularVelocity ( const btVector3 &  ang_vel  )  [inline]

Definition at line 361 of file btRigidBody.h.

void btRigidBody::setCenterOfMassTransform ( const btTransform xform  ) 
void btRigidBody::setDamping ( btScalar  lin_damping,
btScalar  ang_damping 
)
void btRigidBody::setFlags ( int  flags  )  [inline]

Definition at line 512 of file btRigidBody.h.

void btRigidBody::setGravity ( const btVector3 &  acceleration  ) 
void btRigidBody::setInvInertiaDiagLocal ( const btVector3 &  diagInvInertia  )  [inline]

Definition at line 288 of file btRigidBody.h.

void btRigidBody::setLinearFactor ( const btVector3 &  linearFactor  )  [inline]

Definition at line 254 of file btRigidBody.h.

void btRigidBody::setLinearVelocity ( const btVector3 &  lin_vel  )  [inline]

Definition at line 356 of file btRigidBody.h.

void btRigidBody::setMassProps ( btScalar  mass,
const btVector3 &  inertia 
)
void btRigidBody::setMotionState ( btMotionState motionState  )  [inline]

Definition at line 466 of file btRigidBody.h.

void btRigidBody::setNewBroadphaseProxy ( btBroadphaseProxy *  broadphaseProxy  )  [inline]

Definition at line 452 of file btRigidBody.h.

void btRigidBody::setSleepingThresholds ( btScalar  linear,
btScalar  angular 
) [inline]

Definition at line 293 of file btRigidBody.h.

void btRigidBody::setupRigidBody ( const btRigidBodyConstructionInfo constructionInfo  )  [protected]

setupRigidBody is only used internally by the constructor

void btRigidBody::translate ( const btVector3 &  v  )  [inline]

Definition at line 375 of file btRigidBody.h.

static btRigidBody* btRigidBody::upcast ( btCollisionObject *  colObj  )  [inline, static]

Definition at line 195 of file btRigidBody.h.

static const btRigidBody* btRigidBody::upcast ( const btCollisionObject *  colObj  )  [inline, static]

to keep collision detection and dynamics separate we don't store a rigidbody pointer but a rigidbody is derived from btCollisionObject, so we can safely perform an upcast

Definition at line 189 of file btRigidBody.h.

SIMD_FORCE_INLINE void btRigidBody::updateDeactivation ( btScalar  timeStep  )  [inline]

Definition at line 405 of file btRigidBody.h.

void btRigidBody::updateInertiaTensor (  ) 
SIMD_FORCE_INLINE bool btRigidBody::wantsSleeping (  )  [inline]

Definition at line 422 of file btRigidBody.h.


Member Data Documentation

Definition at line 77 of file btRigidBody.h.

Definition at line 76 of file btRigidBody.h.

Definition at line 73 of file btRigidBody.h.

Definition at line 74 of file btRigidBody.h.

Definition at line 75 of file btRigidBody.h.

Definition at line 71 of file btRigidBody.h.

btVector3 btRigidBody::m_angularFactor [protected]

Definition at line 98 of file btRigidBody.h.

Definition at line 81 of file btRigidBody.h.

btVector3 btRigidBody::m_angularVelocity [private]

Definition at line 60 of file btRigidBody.h.

Definition at line 87 of file btRigidBody.h.

Definition at line 474 of file btRigidBody.h.

Definition at line 91 of file btRigidBody.h.

btVector3 btRigidBody::m_deltaAngularVelocity [protected]

Definition at line 97 of file btRigidBody.h.

Definition at line 475 of file btRigidBody.h.

btVector3 btRigidBody::m_gravity [private]

Definition at line 64 of file btRigidBody.h.

Definition at line 65 of file btRigidBody.h.

Definition at line 61 of file btRigidBody.h.

btVector3 btRigidBody::m_invInertiaLocal [private]

Definition at line 66 of file btRigidBody.h.

Definition at line 58 of file btRigidBody.h.

btVector3 btRigidBody::m_invMass [protected]

Definition at line 99 of file btRigidBody.h.

Definition at line 70 of file btRigidBody.h.

btVector3 btRigidBody::m_linearFactor [private]

Definition at line 62 of file btRigidBody.h.

Definition at line 80 of file btRigidBody.h.

btVector3 btRigidBody::m_linearVelocity [private]

Definition at line 59 of file btRigidBody.h.

Definition at line 84 of file btRigidBody.h.

btVector3 btRigidBody::m_pushVelocity [protected]

Definition at line 100 of file btRigidBody.h.

Definition at line 89 of file btRigidBody.h.

btVector3 btRigidBody::m_totalForce [private]

Definition at line 67 of file btRigidBody.h.

btVector3 btRigidBody::m_totalTorque [private]

Definition at line 68 of file btRigidBody.h.

btVector3 btRigidBody::m_turnVelocity [protected]

Definition at line 101 of file btRigidBody.h.


The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


bullet
Author(s): Erwin Coumans, ROS package maintained by Tully Foote
autogenerated on Fri Jan 11 10:11:06 2013