Blender  V3.3
Classes | Macros | Functions | Variables
btMultiBody.h File Reference
#include "LinearMath/btScalar.h"
#include "LinearMath/btVector3.h"
#include "LinearMath/btQuaternion.h"
#include "LinearMath/btMatrix3x3.h"
#include "LinearMath/btAlignedObjectArray.h"
#include "btMultiBodyLink.h"

Go to the source code of this file.

Macros

#define btMultiBodyData   btMultiBodyFloatData
 serialization data, don't change them if you are not familiar with the details of the serialization mechanisms More...
 
#define btMultiBodyDataName   "btMultiBodyFloatData"
 
#define btMultiBodyLinkData   btMultiBodyLinkFloatData
 
#define btMultiBodyLinkDataName   "btMultiBodyLinkFloatData"
 

Functions

 btMultiBody (int n_links, btScalar mass, const btVector3 &inertia, bool fixedBase, bool canSleep, bool deprecatedMultiDof=true)
 
virtual ~btMultiBody ()
 
void setupFixed (int i, btScalar mass, const btVector3 &inertia, int parent, const btQuaternion &rotParentToThis, const btVector3 &parentComToThisPivotOffset, const btVector3 &thisPivotToThisComOffset, bool deprecatedDisableParentCollision=true)
 
void setupPrismatic (int i, btScalar mass, const btVector3 &inertia, int parent, const btQuaternion &rotParentToThis, const btVector3 &jointAxis, const btVector3 &parentComToThisPivotOffset, const btVector3 &thisPivotToThisComOffset, bool disableParentCollision)
 
void setupRevolute (int i, btScalar mass, const btVector3 &inertia, int parentIndex, const btQuaternion &rotParentToThis, const btVector3 &jointAxis, const btVector3 &parentComToThisPivotOffset, const btVector3 &thisPivotToThisComOffset, bool disableParentCollision=false)
 
void setupSpherical (int i, btScalar mass, const btVector3 &inertia, int parent, const btQuaternion &rotParentToThis, const btVector3 &parentComToThisPivotOffset, const btVector3 &thisPivotToThisComOffset, bool disableParentCollision=false)
 
void setupPlanar (int i, btScalar mass, const btVector3 &inertia, int parent, const btQuaternion &rotParentToThis, const btVector3 &rotationAxis, const btVector3 &parentComToThisComOffset, bool disableParentCollision=false)
 
const btMultibodyLinkgetLink (int index) const
 
void setBaseCollider (btMultiBodyLinkCollider *collider)
 
const btMultiBodyLinkCollidergetBaseCollider () const
 
const btMultiBodyLinkCollidergetLinkCollider (int index) const
 
int getParent (int link_num) const
 
int getNumLinks () const
 
int getNumDofs () const
 
int getNumPosVars () const
 
btScalar getBaseMass () const
 
const btVector3getBaseInertia () const
 
btScalar getLinkMass (int i) const
 
const btVector3getLinkInertia (int i) const
 
void setBaseMass (btScalar mass)
 
void setBaseInertia (const btVector3 &inertia)
 
const btVector3getBasePos () const
 
const btVector3 getBaseVel () const
 
const btQuaterniongetWorldToBaseRot () const
 
const btVector3getInterpolateBasePos () const
 
const btQuaterniongetInterpolateWorldToBaseRot () const
 
btVector3 getBaseOmega () const
 
void setBasePos (const btVector3 &pos)
 
void setBaseWorldTransform (const btTransform &tr)
 
btTransform getBaseWorldTransform () const
 
void setBaseVel (const btVector3 &vel)
 
void setWorldToBaseRot (const btQuaternion &rot)
 
void setBaseOmega (const btVector3 &omega)
 
btScalar getJointPos (int i) const
 
btScalar getJointVel (int i) const
 
btScalargetJointVelMultiDof (int i)
 
btScalargetJointPosMultiDof (int i)
 
void setJointPos (int i, btScalar q)
 
void setJointVel (int i, btScalar qdot)
 
void setJointPosMultiDof (int i, const double *q)
 
void setJointVelMultiDof (int i, const double *qdot)
 
void setJointPosMultiDof (int i, const float *q)
 
void setJointVelMultiDof (int i, const float *qdot)
 
const btScalargetVelocityVector () const
 
const btScalargetDeltaVelocityVector () const
 
const btScalargetSplitVelocityVector () const
 
const btVector3getRVector (int i) const
 
const btQuaterniongetParentToLocalRot (int i) const
 
const btVector3getInterpolateRVector (int i) const
 
const btQuaterniongetInterpolateParentToLocalRot (int i) const
 
btVector3 localPosToWorld (int i, const btVector3 &local_pos) const
 
btVector3 localDirToWorld (int i, const btVector3 &local_dir) const
 
btVector3 worldPosToLocal (int i, const btVector3 &world_pos) const
 
btVector3 worldDirToLocal (int i, const btVector3 &world_dir) const
 
btMatrix3x3 localFrameToWorld (int i, const btMatrix3x3 &local_frame) const
 
void clearForcesAndTorques ()
 
void clearConstraintForces ()
 
void clearVelocities ()
 
void addBaseForce (const btVector3 &f)
 
void addBaseTorque (const btVector3 &t)
 
void addLinkForce (int i, const btVector3 &f)
 
void addLinkTorque (int i, const btVector3 &t)
 
void addBaseConstraintForce (const btVector3 &f)
 
void addBaseConstraintTorque (const btVector3 &t)
 
void addLinkConstraintForce (int i, const btVector3 &f)
 
void addLinkConstraintTorque (int i, const btVector3 &t)
 
void addJointTorque (int i, btScalar Q)
 
void addJointTorqueMultiDof (int i, int dof, btScalar Q)
 
void addJointTorqueMultiDof (int i, const btScalar *Q)
 
const btVector3getBaseForce () const
 
const btVector3getBaseTorque () const
 
const btVector3getLinkForce (int i) const
 
const btVector3getLinkTorque (int i) const
 
btScalar getJointTorque (int i) const
 
btScalargetJointTorqueMultiDof (int i)
 
void computeAccelerationsArticulatedBodyAlgorithmMultiDof (btScalar dt, btAlignedObjectArray< btScalar > &scratch_r, btAlignedObjectArray< btVector3 > &scratch_v, btAlignedObjectArray< btMatrix3x3 > &scratch_m, bool isConstraintPass, bool jointFeedbackInWorldSpace, bool jointFeedbackInJointFrame)
 
void calcAccelerationDeltasMultiDof (const btScalar *force, btScalar *output, btAlignedObjectArray< btScalar > &scratch_r, btAlignedObjectArray< btVector3 > &scratch_v) const
 stepVelocitiesMultiDof is deprecated, use computeAccelerationsArticulatedBodyAlgorithmMultiDof instead More...
 
void applyDeltaVeeMultiDof2 (const btScalar *delta_vee, btScalar multiplier)
 
void applyDeltaSplitVeeMultiDof (const btScalar *delta_vee, btScalar multiplier)
 
void addSplitV ()
 
void substractSplitV ()
 
void processDeltaVeeMultiDof2 ()
 
void applyDeltaVeeMultiDof (const btScalar *delta_vee, btScalar multiplier)
 
void stepPositionsMultiDof (btScalar dt, btScalar *pq=0, btScalar *pqd=0)
 
void predictPositionsMultiDof (btScalar dt)
 
void fillContactJacobianMultiDof (int link, const btVector3 &contact_point, const btVector3 &normal, btScalar *jac, btAlignedObjectArray< btScalar > &scratch_r, btAlignedObjectArray< btVector3 > &scratch_v, btAlignedObjectArray< btMatrix3x3 > &scratch_m) const
 
void fillConstraintJacobianMultiDof (int link, const btVector3 &contact_point, const btVector3 &normal_ang, const btVector3 &normal_lin, btScalar *jac, btAlignedObjectArray< btScalar > &scratch_r, btAlignedObjectArray< btVector3 > &scratch_v, btAlignedObjectArray< btMatrix3x3 > &scratch_m) const
 
void setCanSleep (bool canSleep)
 
bool getCanSleep () const
 
bool getCanWakeup () const
 
void setCanWakeup (bool canWakeup)
 
bool isAwake () const
 
void wakeUp ()
 
void goToSleep ()
 
void checkMotionAndSleepIfRequired (btScalar timestep)
 
bool hasFixedBase () const
 
void setFixedBase (bool fixedBase)
 
int getCompanionId () const
 
void setCompanionId (int id)
 
void setNumLinks (int numLinks)
 
btScalar getLinearDamping () const
 
void setLinearDamping (btScalar damp)
 
btScalar getAngularDamping () const
 
void setAngularDamping (btScalar damp)
 
bool getUseGyroTerm () const
 
void setUseGyroTerm (bool useGyro)
 
btScalar getMaxCoordinateVelocity () const
 
void setMaxCoordinateVelocity (btScalar maxVel)
 
btScalar getMaxAppliedImpulse () const
 
void setMaxAppliedImpulse (btScalar maxImp)
 
void setHasSelfCollision (bool hasSelfCollision)
 
bool hasSelfCollision () const
 
void finalizeMultiDof ()
 
void useRK4Integration (bool use)
 
bool isUsingRK4Integration () const
 
void useGlobalVelocities (bool use)
 
bool isUsingGlobalVelocities () const
 
bool isPosUpdated () const
 
void setPosUpdated (bool updated)
 
bool internalNeedsJointFeedback () const
 
void forwardKinematics (btAlignedObjectArray< btQuaternion > &world_to_local, btAlignedObjectArray< btVector3 > &local_origin)
 
void compTreeLinkVelocities (btVector3 *omega, btVector3 *vel) const
 
void updateCollisionObjectWorldTransforms (btAlignedObjectArray< btQuaternion > &world_to_local, btAlignedObjectArray< btVector3 > &local_origin)
 
void updateCollisionObjectInterpolationWorldTransforms (btAlignedObjectArray< btQuaternion > &world_to_local, btAlignedObjectArray< btVector3 > &local_origin)
 
virtual int calculateSerializeBufferSize () const
 
virtual const char * serialize (void *dataBuffer, class btSerializer *serializer) const
 fills the dataBuffer and returns the struct name (and 0 on failure) More...
 
const char * getBaseName () const
 
void setBaseName (const char *name)
 memory of setBaseName needs to be manager by user More...
 
voidgetUserPointer () const
 users can point to their objects, userPointer is not used by Bullet More...
 
int getUserIndex () const
 
int getUserIndex2 () const
 
void setUserPointer (void *userPointer)
 users can point to their objects, userPointer is not used by Bullet More...
 
void setUserIndex (int index)
 users can point to their objects, userPointer is not used by Bullet More...
 
void setUserIndex2 (int index)
 
static void spatialTransform (const btMatrix3x3 &rotation_matrix, const btVector3 &displacement, const btVector3 &top_in, const btVector3 &bottom_in, btVector3 &top_out, btVector3 &bottom_out)
 

Variables

 btMultiBody
 

Macro Definition Documentation

◆ btMultiBodyData

#define btMultiBodyData   btMultiBodyFloatData

serialization data, don't change them if you are not familiar with the details of the serialization mechanisms

Definition at line 40 of file btMultiBody.h.

◆ btMultiBodyDataName

#define btMultiBodyDataName   "btMultiBodyFloatData"

Definition at line 41 of file btMultiBody.h.

◆ btMultiBodyLinkData

#define btMultiBodyLinkData   btMultiBodyLinkFloatData

Definition at line 42 of file btMultiBody.h.

◆ btMultiBodyLinkDataName

#define btMultiBodyLinkDataName   "btMultiBodyLinkFloatData"

Definition at line 43 of file btMultiBody.h.

Function Documentation

◆ addBaseConstraintForce()

void addBaseConstraintForce ( const btVector3 f)

Definition at line 333 of file btMultiBody.h.

◆ addBaseConstraintTorque()

void addBaseConstraintTorque ( const btVector3 t)

Definition at line 337 of file btMultiBody.h.

◆ addBaseForce()

void addBaseForce ( const btVector3 f)

Definition at line 325 of file btMultiBody.h.

◆ addBaseTorque()

void addBaseTorque ( const btVector3 t)

Definition at line 329 of file btMultiBody.h.

◆ addJointTorque()

void btMultiBody::addJointTorque ( int  i,
btScalar  Q 
)

Definition at line 640 of file btMultiBody.cpp.

◆ addJointTorqueMultiDof() [1/2]

void btMultiBody::addJointTorqueMultiDof ( int  i,
const btScalar Q 
)

Definition at line 650 of file btMultiBody.cpp.

◆ addJointTorqueMultiDof() [2/2]

void btMultiBody::addJointTorqueMultiDof ( int  i,
int  dof,
btScalar  Q 
)

Definition at line 645 of file btMultiBody.cpp.

◆ addLinkConstraintForce()

void btMultiBody::addLinkConstraintForce ( int  i,
const btVector3 f 
)

Definition at line 630 of file btMultiBody.cpp.

◆ addLinkConstraintTorque()

void btMultiBody::addLinkConstraintTorque ( int  i,
const btVector3 t 
)

Definition at line 635 of file btMultiBody.cpp.

◆ addLinkForce()

void btMultiBody::addLinkForce ( int  i,
const btVector3 f 
)

Definition at line 620 of file btMultiBody.cpp.

◆ addLinkTorque()

void btMultiBody::addLinkTorque ( int  i,
const btVector3 t 
)

Definition at line 625 of file btMultiBody.cpp.

◆ addSplitV()

void addSplitV ( )

Definition at line 412 of file btMultiBody.h.

References applyDeltaVeeMultiDof().

◆ applyDeltaSplitVeeMultiDof()

void applyDeltaSplitVeeMultiDof ( const btScalar delta_vee,
btScalar  multiplier 
)

Definition at line 405 of file btMultiBody.h.

References getNumDofs().

◆ applyDeltaVeeMultiDof()

void applyDeltaVeeMultiDof ( const btScalar delta_vee,
btScalar  multiplier 
)

Definition at line 435 of file btMultiBody.h.

References getNumDofs().

Referenced by addSplitV(), processDeltaVeeMultiDof2(), and substractSplitV().

◆ applyDeltaVeeMultiDof2()

void applyDeltaVeeMultiDof2 ( const btScalar delta_vee,
btScalar  multiplier 
)

Definition at line 398 of file btMultiBody.h.

References getNumDofs().

◆ btMultiBody()

btMultiBody ( int  n_links,
btScalar  mass,
const btVector3 inertia,
bool  fixedBase,
bool  canSleep,
bool  deprecatedMultiDof = true 
)

◆ calcAccelerationDeltasMultiDof()

void btMultiBody::calcAccelerationDeltasMultiDof ( const btScalar force,
btScalar output,
btAlignedObjectArray< btScalar > &  scratch_r,
btAlignedObjectArray< btVector3 > &  scratch_v 
) const

stepVelocitiesMultiDof is deprecated, use computeAccelerationsArticulatedBodyAlgorithmMultiDof instead

Definition at line 1394 of file btMultiBody.cpp.

References getNumLinks(), and btAlignedObjectArray< T >::resize().

◆ calculateSerializeBufferSize()

virtual int calculateSerializeBufferSize ( ) const
virtual

◆ checkMotionAndSleepIfRequired()

void btMultiBody::checkMotionAndSleepIfRequired ( btScalar  timestep)

Definition at line 2001 of file btMultiBody.cpp.

References gDisableDeactivation.

◆ clearConstraintForces()

void btMultiBody::clearConstraintForces ( )

Definition at line 589 of file btMultiBody.cpp.

◆ clearForcesAndTorques()

void btMultiBody::clearForcesAndTorques ( )

Definition at line 600 of file btMultiBody.cpp.

◆ clearVelocities()

void btMultiBody::clearVelocities ( )

Definition at line 613 of file btMultiBody.cpp.

References getNumDofs().

◆ compTreeLinkVelocities()

void btMultiBody::compTreeLinkVelocities ( btVector3 omega,
btVector3 vel 
) const

◆ computeAccelerationsArticulatedBodyAlgorithmMultiDof()

void btMultiBody::computeAccelerationsArticulatedBodyAlgorithmMultiDof ( btScalar  dt,
btAlignedObjectArray< btScalar > &  scratch_r,
btAlignedObjectArray< btVector3 > &  scratch_v,
btAlignedObjectArray< btMatrix3x3 > &  scratch_m,
bool  isConstraintPass,
bool  jointFeedbackInWorldSpace,
bool  jointFeedbackInJointFrame 
)

Definition at line 700 of file btMultiBody.cpp.

◆ fillConstraintJacobianMultiDof()

void btMultiBody::fillConstraintJacobianMultiDof ( int  link,
const btVector3 contact_point,
const btVector3 normal_ang,
const btVector3 normal_lin,
btScalar jac,
btAlignedObjectArray< btScalar > &  scratch_r,
btAlignedObjectArray< btVector3 > &  scratch_v,
btAlignedObjectArray< btMatrix3x3 > &  scratch_m 
) const

Definition at line 1847 of file btMultiBody.cpp.

References getNumLinks().

Referenced by fillContactJacobianMultiDof().

◆ fillContactJacobianMultiDof()

void fillContactJacobianMultiDof ( int  link,
const btVector3 contact_point,
const btVector3 normal,
btScalar jac,
btAlignedObjectArray< btScalar > &  scratch_r,
btAlignedObjectArray< btVector3 > &  scratch_v,
btAlignedObjectArray< btMatrix3x3 > &  scratch_m 
) const

Definition at line 474 of file btMultiBody.h.

References btVector3, fillConstraintJacobianMultiDof(), and normal.

◆ finalizeMultiDof()

void finalizeMultiDof ( )

◆ forwardKinematics()

void forwardKinematics ( btAlignedObjectArray< btQuaternion > &  world_to_local,
btAlignedObjectArray< btVector3 > &  local_origin 
)

◆ getAngularDamping()

btScalar getAngularDamping ( ) const

Definition at line 556 of file btMultiBody.h.

References m_angularDamping.

◆ getBaseCollider()

btMultiBodyLinkCollider * getBaseCollider ( ) const

◆ getBaseForce()

const btVector3& getBaseForce ( ) const

Definition at line 345 of file btMultiBody.h.

◆ getBaseInertia()

const btVector3& getBaseInertia ( ) const

Definition at line 170 of file btMultiBody.h.

◆ getBaseMass()

btScalar getBaseMass ( ) const

Definition at line 169 of file btMultiBody.h.

◆ getBaseName()

const char* getBaseName ( ) const

Definition at line 632 of file btMultiBody.h.

◆ getBaseOmega()

btVector3 getBaseOmega ( ) const

Definition at line 208 of file btMultiBody.h.

References btVector3.

Referenced by compTreeLinkVelocities().

◆ getBasePos()

const btVector3& getBasePos ( ) const

Definition at line 185 of file btMultiBody.h.

Referenced by getBaseWorldTransform(), and updateCollisionObjectWorldTransforms().

◆ getBaseTorque()

const btVector3& getBaseTorque ( ) const

Definition at line 346 of file btMultiBody.h.

◆ getBaseVel()

const btVector3 getBaseVel ( ) const

Definition at line 189 of file btMultiBody.h.

References btVector3.

Referenced by compTreeLinkVelocities().

◆ getBaseWorldTransform()

btTransform getBaseWorldTransform ( ) const

Definition at line 222 of file btMultiBody.h.

References btTransform, getBasePos(), getWorldToBaseRot(), and inverse().

◆ getCanSleep()

bool getCanSleep ( ) const

Definition at line 504 of file btMultiBody.h.

◆ getCanWakeup()

bool getCanWakeup ( ) const

Definition at line 509 of file btMultiBody.h.

◆ getCompanionId()

int getCompanionId ( ) const

Definition at line 533 of file btMultiBody.h.

References m_companionId.

◆ getDeltaVelocityVector()

const btScalar* getDeltaVelocityVector ( ) const

Definition at line 277 of file btMultiBody.h.

◆ getInterpolateBasePos()

const btVector3& getInterpolateBasePos ( ) const

Definition at line 198 of file btMultiBody.h.

Referenced by updateCollisionObjectInterpolationWorldTransforms().

◆ getInterpolateParentToLocalRot()

const btQuaternion & btMultiBody::getInterpolateParentToLocalRot ( int  i) const

Definition at line 461 of file btMultiBody.cpp.

Referenced by updateCollisionObjectInterpolationWorldTransforms().

◆ getInterpolateRVector()

const btVector3 & btMultiBody::getInterpolateRVector ( int  i) const

Definition at line 456 of file btMultiBody.cpp.

Referenced by updateCollisionObjectInterpolationWorldTransforms().

◆ getInterpolateWorldToBaseRot()

const btQuaternion& getInterpolateWorldToBaseRot ( ) const

Definition at line 202 of file btMultiBody.h.

Referenced by updateCollisionObjectInterpolationWorldTransforms().

◆ getJointPos()

btScalar btMultiBody::getJointPos ( int  i) const

Definition at line 374 of file btMultiBody.cpp.

◆ getJointPosMultiDof()

const btScalar * getJointPosMultiDof ( int  i)

Definition at line 384 of file btMultiBody.cpp.

◆ getJointTorque()

btScalar btMultiBody::getJointTorque ( int  i) const

Definition at line 666 of file btMultiBody.cpp.

◆ getJointTorqueMultiDof()

btScalar * btMultiBody::getJointTorqueMultiDof ( int  i)

Definition at line 671 of file btMultiBody.cpp.

◆ getJointVel()

btScalar btMultiBody::getJointVel ( int  i) const

Definition at line 379 of file btMultiBody.cpp.

◆ getJointVelMultiDof()

const btScalar * getJointVelMultiDof ( int  i)

Definition at line 389 of file btMultiBody.cpp.

Referenced by compTreeLinkVelocities().

◆ getLinearDamping()

btScalar getLinearDamping ( ) const

Definition at line 548 of file btMultiBody.h.

References m_linearDamping.

◆ getLink()

btMultibodyLink & getLink ( int  index) const

◆ getLinkCollider()

btMultiBodyLinkCollider * getLinkCollider ( int  index) const

Definition at line 137 of file btMultiBody.h.

References getLink(), getNumLinks(), and btMultibodyLink::m_collider.

◆ getLinkForce()

const btVector3 & btMultiBody::getLinkForce ( int  i) const

Definition at line 656 of file btMultiBody.cpp.

◆ getLinkInertia()

const btVector3 & btMultiBody::getLinkInertia ( int  i) const

Definition at line 369 of file btMultiBody.cpp.

◆ getLinkMass()

btScalar btMultiBody::getLinkMass ( int  i) const

Definition at line 364 of file btMultiBody.cpp.

◆ getLinkTorque()

const btVector3 & btMultiBody::getLinkTorque ( int  i) const

Definition at line 661 of file btMultiBody.cpp.

◆ getMaxAppliedImpulse()

btScalar getMaxAppliedImpulse ( ) const

Definition at line 582 of file btMultiBody.h.

References m_maxAppliedImpulse.

◆ getMaxCoordinateVelocity()

btScalar getMaxCoordinateVelocity ( ) const

Definition at line 573 of file btMultiBody.h.

◆ getNumDofs()

int getNumDofs ( ) const

◆ getNumLinks()

int getNumLinks ( ) const

◆ getNumPosVars()

int getNumPosVars ( ) const

Definition at line 168 of file btMultiBody.h.

◆ getParent()

int btMultiBody::getParent ( int  link_num) const

◆ getParentToLocalRot()

const btQuaternion & btMultiBody::getParentToLocalRot ( int  i) const

Definition at line 451 of file btMultiBody.cpp.

Referenced by updateCollisionObjectWorldTransforms().

◆ getRVector()

const btVector3 & btMultiBody::getRVector ( int  i) const

Definition at line 446 of file btMultiBody.cpp.

Referenced by updateCollisionObjectWorldTransforms().

◆ getSplitVelocityVector()

const btScalar* getSplitVelocityVector ( ) const

Definition at line 282 of file btMultiBody.h.

◆ getUseGyroTerm()

bool getUseGyroTerm ( ) const

Definition at line 565 of file btMultiBody.h.

◆ getUserIndex()

int getUserIndex ( ) const

Definition at line 648 of file btMultiBody.h.

◆ getUserIndex2()

int getUserIndex2 ( ) const

Definition at line 653 of file btMultiBody.h.

◆ getUserPointer()

void* getUserPointer ( ) const

users can point to their objects, userPointer is not used by Bullet

Definition at line 643 of file btMultiBody.h.

References m_userObjectPointer.

◆ getVelocityVector()

const btScalar* getVelocityVector ( ) const

Definition at line 272 of file btMultiBody.h.

◆ getWorldToBaseRot()

const btQuaternion& getWorldToBaseRot ( ) const

◆ goToSleep()

void btMultiBody::goToSleep ( )

Definition at line 1996 of file btMultiBody.cpp.

◆ hasFixedBase()

bool hasFixedBase ( ) const

Definition at line 523 of file btMultiBody.h.

◆ hasSelfCollision()

bool hasSelfCollision ( ) const

Definition at line 594 of file btMultiBody.h.

◆ internalNeedsJointFeedback()

bool internalNeedsJointFeedback ( ) const

Definition at line 616 of file btMultiBody.h.

◆ isAwake()

bool isAwake ( ) const

Definition at line 518 of file btMultiBody.h.

◆ isPosUpdated()

bool isPosUpdated ( ) const

Definition at line 606 of file btMultiBody.h.

◆ isUsingGlobalVelocities()

bool isUsingGlobalVelocities ( ) const

Definition at line 604 of file btMultiBody.h.

◆ isUsingRK4Integration()

bool isUsingRK4Integration ( ) const

Definition at line 602 of file btMultiBody.h.

◆ localDirToWorld()

btVector3 btMultiBody::localDirToWorld ( int  i,
const btVector3 local_dir 
) const

Definition at line 512 of file btMultiBody.cpp.

References btAssert.

Referenced by localFrameToWorld().

◆ localFrameToWorld()

btMatrix3x3 btMultiBody::localFrameToWorld ( int  i,
const btMatrix3x3 local_frame 
) const

Definition at line 550 of file btMultiBody.cpp.

References btMatrix3x3, btVector3, localDirToWorld(), and result.

◆ localPosToWorld()

btVector3 btMultiBody::localPosToWorld ( int  i,
const btVector3 local_pos 
) const

Definition at line 466 of file btMultiBody.cpp.

References btAssert.

◆ predictPositionsMultiDof()

void btMultiBody::predictPositionsMultiDof ( btScalar  dt)

baseBody => quat is alibi and omega is local coor

Definition at line 1552 of file btMultiBody.cpp.

References getNumLinks().

◆ processDeltaVeeMultiDof2()

void processDeltaVeeMultiDof2 ( )

Definition at line 425 of file btMultiBody.h.

References applyDeltaVeeMultiDof().

◆ serialize()

virtual const char* serialize ( void dataBuffer,
class btSerializer serializer 
) const
virtual

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

◆ setAngularDamping()

void setAngularDamping ( btScalar  damp)

Definition at line 560 of file btMultiBody.h.

References m_angularDamping.

◆ setBaseCollider()

void setBaseCollider ( btMultiBodyLinkCollider collider)

Definition at line 124 of file btMultiBody.h.

◆ setBaseInertia()

void setBaseInertia ( const btVector3 inertia)

Definition at line 179 of file btMultiBody.h.

◆ setBaseMass()

void setBaseMass ( btScalar  mass)

Definition at line 178 of file btMultiBody.h.

◆ setBaseName()

void setBaseName ( const char *  name)

memory of setBaseName needs to be manager by user

Definition at line 637 of file btMultiBody.h.

◆ setBaseOmega()

void setBaseOmega ( const btVector3 omega)

Definition at line 241 of file btMultiBody.h.

◆ setBasePos()

void setBasePos ( const btVector3 pos)

Definition at line 210 of file btMultiBody.h.

Referenced by setBaseWorldTransform().

◆ setBaseVel()

void setBaseVel ( const btVector3 vel)

Definition at line 230 of file btMultiBody.h.

◆ setBaseWorldTransform()

void setBaseWorldTransform ( const btTransform tr)

Definition at line 216 of file btMultiBody.h.

References setBasePos(), and setWorldToBaseRot().

◆ setCanSleep()

void setCanSleep ( bool  canSleep)

Definition at line 496 of file btMultiBody.h.

◆ setCanWakeup()

void setCanWakeup ( bool  canWakeup)

Definition at line 514 of file btMultiBody.h.

◆ setCompanionId()

void setCompanionId ( int  id)

Definition at line 537 of file btMultiBody.h.

References id, and m_companionId.

◆ setFixedBase()

void setFixedBase ( bool  fixedBase)

Definition at line 528 of file btMultiBody.h.

◆ setHasSelfCollision()

void setHasSelfCollision ( bool  hasSelfCollision)

Definition at line 590 of file btMultiBody.h.

◆ setJointPos()

void btMultiBody::setJointPos ( int  i,
btScalar  q 
)

Definition at line 404 of file btMultiBody.cpp.

◆ setJointPosMultiDof() [1/2]

void btMultiBody::setJointPosMultiDof ( int  i,
const double q 
)

Definition at line 411 of file btMultiBody.cpp.

References pos.

◆ setJointPosMultiDof() [2/2]

void btMultiBody::setJointPosMultiDof ( int  i,
const float q 
)

Definition at line 419 of file btMultiBody.cpp.

References pos.

◆ setJointVel()

void btMultiBody::setJointVel ( int  i,
btScalar  qdot 
)

Definition at line 429 of file btMultiBody.cpp.

◆ setJointVelMultiDof() [1/2]

void btMultiBody::setJointVelMultiDof ( int  i,
const double qdot 
)

Definition at line 434 of file btMultiBody.cpp.

◆ setJointVelMultiDof() [2/2]

void btMultiBody::setJointVelMultiDof ( int  i,
const float qdot 
)

Definition at line 440 of file btMultiBody.cpp.

◆ setLinearDamping()

void setLinearDamping ( btScalar  damp)

Definition at line 552 of file btMultiBody.h.

References m_linearDamping.

◆ setMaxAppliedImpulse()

void setMaxAppliedImpulse ( btScalar  maxImp)

Definition at line 586 of file btMultiBody.h.

References m_maxAppliedImpulse.

◆ setMaxCoordinateVelocity()

void setMaxCoordinateVelocity ( btScalar  maxVel)

Definition at line 577 of file btMultiBody.h.

◆ setNumLinks()

void setNumLinks ( int  numLinks)

Definition at line 543 of file btMultiBody.h.

◆ setPosUpdated()

void setPosUpdated ( bool  updated)

Definition at line 610 of file btMultiBody.h.

◆ setupFixed()

void btMultiBody::setupFixed ( int  i,
btScalar  mass,
const btVector3 inertia,
int  parent,
const btQuaternion rotParentToThis,
const btVector3 parentComToThisPivotOffset,
const btVector3 thisPivotToThisComOffset,
bool  deprecatedDisableParentCollision = true 
)

Definition at line 150 of file btMultiBody.cpp.

◆ setupPlanar()

void btMultiBody::setupPlanar ( int  i,
btScalar  mass,
const btVector3 inertia,
int  parent,
const btQuaternion rotParentToThis,
const btVector3 rotationAxis,
const btVector3 parentComToThisComOffset,
bool  disableParentCollision = false 
)

Definition at line 292 of file btMultiBody.cpp.

◆ setupPrismatic()

void btMultiBody::setupPrismatic ( int  i,
btScalar  mass,
const btVector3 inertia,
int  parent,
const btQuaternion rotParentToThis,
const btVector3 jointAxis,
const btVector3 parentComToThisPivotOffset,
const btVector3 thisPivotToThisComOffset,
bool  disableParentCollision 
)

Definition at line 178 of file btMultiBody.cpp.

◆ setupRevolute()

void btMultiBody::setupRevolute ( int  i,
btScalar  mass,
const btVector3 inertia,
int  parentIndex,
const btQuaternion rotParentToThis,
const btVector3 jointAxis,
const btVector3 parentComToThisPivotOffset,
const btVector3 thisPivotToThisComOffset,
bool  disableParentCollision = false 
)

Definition at line 216 of file btMultiBody.cpp.

◆ setupSpherical()

void btMultiBody::setupSpherical ( int  i,
btScalar  mass,
const btVector3 inertia,
int  parent,
const btQuaternion rotParentToThis,
const btVector3 parentComToThisPivotOffset,
const btVector3 thisPivotToThisComOffset,
bool  disableParentCollision = false 
)

Definition at line 252 of file btMultiBody.cpp.

◆ setUseGyroTerm()

void setUseGyroTerm ( bool  useGyro)

Definition at line 569 of file btMultiBody.h.

◆ setUserIndex()

void setUserIndex ( int  index)

users can point to their objects, userPointer is not used by Bullet

Definition at line 664 of file btMultiBody.h.

◆ setUserIndex2()

void setUserIndex2 ( int  index)

Definition at line 669 of file btMultiBody.h.

◆ setUserPointer()

void setUserPointer ( void userPointer)

users can point to their objects, userPointer is not used by Bullet

Definition at line 658 of file btMultiBody.h.

References m_userObjectPointer.

◆ setWorldToBaseRot()

void setWorldToBaseRot ( const btQuaternion rot)

Definition at line 236 of file btMultiBody.h.

Referenced by setBaseWorldTransform().

◆ spatialTransform()

void btMultiBody::spatialTransform ( const btMatrix3x3 rotation_matrix,
const btVector3 displacement,
const btVector3 top_in,
const btVector3 bottom_in,
btVector3 top_out,
btVector3 bottom_out 
)
static

Definition at line 40 of file btMultiBody.cpp.

Referenced by compTreeLinkVelocities().

◆ stepPositionsMultiDof()

void btMultiBody::stepPositionsMultiDof ( btScalar  dt,
btScalar pq = 0,
btScalar pqd = 0 
)

baseBody => quat is alibi and omega is local coor

Definition at line 1705 of file btMultiBody.cpp.

References getNumLinks().

◆ substractSplitV()

void substractSplitV ( )

Definition at line 416 of file btMultiBody.h.

References applyDeltaVeeMultiDof().

◆ updateCollisionObjectInterpolationWorldTransforms()

void btMultiBody::updateCollisionObjectInterpolationWorldTransforms ( btAlignedObjectArray< btQuaternion > &  world_to_local,
btAlignedObjectArray< btVector3 > &  local_origin 
)

◆ updateCollisionObjectWorldTransforms()

void btMultiBody::updateCollisionObjectWorldTransforms ( btAlignedObjectArray< btQuaternion > &  world_to_local,
btAlignedObjectArray< btVector3 > &  local_origin 
)

◆ useGlobalVelocities()

void useGlobalVelocities ( bool  use)

Definition at line 603 of file btMultiBody.h.

◆ useRK4Integration()

void useRK4Integration ( bool  use)

Definition at line 601 of file btMultiBody.h.

◆ wakeUp()

void btMultiBody::wakeUp ( )

Definition at line 1990 of file btMultiBody.cpp.

◆ worldDirToLocal()

btVector3 btMultiBody::worldDirToLocal ( int  i,
const btVector3 world_dir 
) const

Definition at line 531 of file btMultiBody.cpp.

References btAssert.

◆ worldPosToLocal()

btVector3 btMultiBody::worldPosToLocal ( int  i,
const btVector3 world_pos 
) const

Definition at line 491 of file btMultiBody.cpp.

References btAssert.

◆ ~btMultiBody()

btMultiBody::~btMultiBody ( )
virtual

Definition at line 146 of file btMultiBody.cpp.

Variable Documentation

◆ btMultiBody

btMultiBody::btMultiBody