Blender V5.0
btMultiBodyDynamicsWorld Class Reference

#include <btMultiBodyDynamicsWorld.h>

Inherits btDiscreteDynamicsWorld.

Inherited by btDeformableMultiBodyDynamicsWorld, and btSoftMultiBodyDynamicsWorld.

Public Member Functions

 btMultiBodyDynamicsWorld (btDispatcher *dispatcher, btBroadphaseInterface *pairCache, btMultiBodyConstraintSolver *constraintSolver, btCollisionConfiguration *collisionConfiguration)
virtual ~btMultiBodyDynamicsWorld ()
virtual void solveConstraints (btContactSolverInfo &solverInfo)
virtual void addMultiBody (btMultiBody *body, int group=btBroadphaseProxy::DefaultFilter, int mask=btBroadphaseProxy::AllFilter)
virtual void removeMultiBody (btMultiBody *body)
virtual int getNumMultibodies () const
btMultiBodygetMultiBody (int mbIndex)
const btMultiBodygetMultiBody (int mbIndex) const
virtual void addMultiBodyConstraint (btMultiBodyConstraint *constraint)
virtual int getNumMultiBodyConstraints () const
virtual btMultiBodyConstraintgetMultiBodyConstraint (int constraintIndex)
virtual const btMultiBodyConstraintgetMultiBodyConstraint (int constraintIndex) const
virtual void removeMultiBodyConstraint (btMultiBodyConstraint *constraint)
virtual void integrateTransforms (btScalar timeStep)
void integrateMultiBodyTransforms (btScalar timeStep)
void predictMultiBodyTransforms (btScalar timeStep)
virtual void predictUnconstraintMotion (btScalar timeStep)
virtual void debugDrawWorld ()
virtual void debugDrawMultiBodyConstraint (btMultiBodyConstraint *constraint)
void forwardKinematics ()
virtual void clearForces ()
virtual void clearMultiBodyConstraintForces ()
virtual void clearMultiBodyForces ()
virtual void applyGravity ()
virtual void serialize (btSerializer *serializer)
virtual void setMultiBodyConstraintSolver (btMultiBodyConstraintSolver *solver)
virtual void setConstraintSolver (btConstraintSolver *solver)
virtual void getAnalyticsData (btAlignedObjectArray< struct btSolverAnalyticsData > &m_islandAnalyticsData) const
virtual void solveExternalForces (btContactSolverInfo &solverInfo)
virtual void solveInternalConstraints (btContactSolverInfo &solverInfo)
void buildIslands ()

Protected Member Functions

virtual void calculateSimulationIslands ()
virtual void updateActivationState (btScalar timeStep)
virtual void serializeMultiBodies (btSerializer *serializer)

Protected Attributes

btAlignedObjectArray< btMultiBody * > m_multiBodies
btAlignedObjectArray< btMultiBodyConstraint * > m_multiBodyConstraints
btAlignedObjectArray< btMultiBodyConstraint * > m_sortedMultiBodyConstraints
btMultiBodyConstraintSolver * m_multiBodyConstraintSolver
MultiBodyInplaceSolverIslandCallbackm_solverMultiBodyIslandCallback
btAlignedObjectArray< btQuaternionm_scratch_world_to_local
btAlignedObjectArray< btVector3m_scratch_local_origin
btAlignedObjectArray< btQuaternionm_scratch_world_to_local1
btAlignedObjectArray< btVector3m_scratch_local_origin1
btAlignedObjectArray< btScalarm_scratch_r
btAlignedObjectArray< btVector3m_scratch_v
btAlignedObjectArray< btMatrix3x3m_scratch_m

Detailed Description

The btMultiBodyDynamicsWorld adds Featherstone multi body dynamics to Bullet This implementation is still preliminary/experimental.

Definition at line 31 of file btMultiBodyDynamicsWorld.h.

Constructor & Destructor Documentation

◆ btMultiBodyDynamicsWorld()

◆ ~btMultiBodyDynamicsWorld()

btMultiBodyDynamicsWorld::~btMultiBodyDynamicsWorld ( )
virtual

Definition at line 187 of file btMultiBodyDynamicsWorld.cpp.

References m_solverMultiBodyIslandCallback.

Member Function Documentation

◆ addMultiBody()

void btMultiBodyDynamicsWorld::addMultiBody ( btMultiBody * body,
int group = btBroadphaseProxy::DefaultFilter,
int mask = btBroadphaseProxy::AllFilter )
virtual

Definition at line 26 of file btMultiBodyDynamicsWorld.cpp.

References btMultiBody, m_multiBodies, and mask().

◆ addMultiBodyConstraint()

void btMultiBodyDynamicsWorld::addMultiBodyConstraint ( btMultiBodyConstraint * constraint)
virtual

Definition at line 657 of file btMultiBodyDynamicsWorld.cpp.

References btMultiBodyConstraint, and m_multiBodyConstraints.

◆ applyGravity()

void btMultiBodyDynamicsWorld::applyGravity ( )
virtual

◆ buildIslands()

void btMultiBodyDynamicsWorld::buildIslands ( )

◆ calculateSimulationIslands()

◆ clearForces()

void btMultiBodyDynamicsWorld::clearForces ( )
virtual

◆ clearMultiBodyConstraintForces()

void btMultiBodyDynamicsWorld::clearMultiBodyConstraintForces ( )
virtual

◆ clearMultiBodyForces()

void btMultiBodyDynamicsWorld::clearMultiBodyForces ( )
virtual

Definition at line 790 of file btMultiBodyDynamicsWorld.cpp.

References b, btMultiBody, i, ISLAND_SLEEPING, and m_multiBodies.

Referenced by clearForces().

◆ debugDrawMultiBodyConstraint()

void btMultiBodyDynamicsWorld::debugDrawMultiBodyConstraint ( btMultiBodyConstraint * constraint)
virtual

Definition at line 667 of file btMultiBodyDynamicsWorld.cpp.

References btMultiBodyConstraint.

Referenced by debugDrawWorld().

◆ debugDrawWorld()

◆ forwardKinematics()

void btMultiBodyDynamicsWorld::forwardKinematics ( )

◆ getAnalyticsData()

void btMultiBodyDynamicsWorld::getAnalyticsData ( btAlignedObjectArray< struct btSolverAnalyticsData > & m_islandAnalyticsData) const
virtual

Definition at line 172 of file btMultiBodyDynamicsWorld.cpp.

References m_solverMultiBodyIslandCallback.

◆ getMultiBody() [1/2]

btMultiBody * btMultiBodyDynamicsWorld::getMultiBody ( int mbIndex)
inline

Definition at line 71 of file btMultiBodyDynamicsWorld.h.

References btMultiBody, and m_multiBodies.

◆ getMultiBody() [2/2]

const btMultiBody * btMultiBodyDynamicsWorld::getMultiBody ( int mbIndex) const
inline

Definition at line 76 of file btMultiBodyDynamicsWorld.h.

References btMultiBody, and m_multiBodies.

◆ getMultiBodyConstraint() [1/2]

virtual btMultiBodyConstraint * btMultiBodyDynamicsWorld::getMultiBodyConstraint ( int constraintIndex)
inlinevirtual

Definition at line 88 of file btMultiBodyDynamicsWorld.h.

References btMultiBodyConstraint, and m_multiBodyConstraints.

◆ getMultiBodyConstraint() [2/2]

virtual const btMultiBodyConstraint * btMultiBodyDynamicsWorld::getMultiBodyConstraint ( int constraintIndex) const
inlinevirtual

Definition at line 93 of file btMultiBodyDynamicsWorld.h.

References btMultiBodyConstraint, and m_multiBodyConstraints.

◆ getNumMultibodies()

virtual int btMultiBodyDynamicsWorld::getNumMultibodies ( ) const
inlinevirtual

Definition at line 66 of file btMultiBodyDynamicsWorld.h.

References m_multiBodies.

◆ getNumMultiBodyConstraints()

virtual int btMultiBodyDynamicsWorld::getNumMultiBodyConstraints ( ) const
inlinevirtual

Definition at line 83 of file btMultiBodyDynamicsWorld.h.

References m_multiBodyConstraints.

◆ integrateMultiBodyTransforms()

void btMultiBodyDynamicsWorld::integrateMultiBodyTransforms ( btScalar timeStep)

◆ integrateTransforms()

void btMultiBodyDynamicsWorld::integrateTransforms ( btScalar timeStep)
virtual

◆ predictMultiBodyTransforms()

void btMultiBodyDynamicsWorld::predictMultiBodyTransforms ( btScalar timeStep)

◆ predictUnconstraintMotion()

void btMultiBodyDynamicsWorld::predictUnconstraintMotion ( btScalar timeStep)
virtual

◆ removeMultiBody()

void btMultiBodyDynamicsWorld::removeMultiBody ( btMultiBody * body)
virtual

Definition at line 31 of file btMultiBodyDynamicsWorld.cpp.

References btMultiBody, and m_multiBodies.

◆ removeMultiBodyConstraint()

void btMultiBodyDynamicsWorld::removeMultiBodyConstraint ( btMultiBodyConstraint * constraint)
virtual

Definition at line 662 of file btMultiBodyDynamicsWorld.cpp.

References btMultiBodyConstraint, and m_multiBodyConstraints.

◆ serialize()

◆ serializeMultiBodies()

void btMultiBodyDynamicsWorld::serializeMultiBodies ( btSerializer * serializer)
protectedvirtual

◆ setConstraintSolver()

void btMultiBodyDynamicsWorld::setConstraintSolver ( btConstraintSolver * solver)
virtual

◆ setMultiBodyConstraintSolver()

void btMultiBodyDynamicsWorld::setMultiBodyConstraintSolver ( btMultiBodyConstraintSolver * solver)
virtual

◆ solveConstraints()

void btMultiBodyDynamicsWorld::solveConstraints ( btContactSolverInfo & solverInfo)
virtual

◆ solveExternalForces()

◆ solveInternalConstraints()

void btMultiBodyDynamicsWorld::solveInternalConstraints ( btContactSolverInfo & solverInfo)
virtual

◆ updateActivationState()

void btMultiBodyDynamicsWorld::updateActivationState ( btScalar timeStep)
protectedvirtual

Member Data Documentation

◆ m_multiBodies

◆ m_multiBodyConstraints

◆ m_multiBodyConstraintSolver

btMultiBodyConstraintSolver* btMultiBodyDynamicsWorld::m_multiBodyConstraintSolver
protected

◆ m_scratch_local_origin

btAlignedObjectArray<btVector3> btMultiBodyDynamicsWorld::m_scratch_local_origin
protected

◆ m_scratch_local_origin1

btAlignedObjectArray<btVector3> btMultiBodyDynamicsWorld::m_scratch_local_origin1
protected

Definition at line 44 of file btMultiBodyDynamicsWorld.h.

Referenced by debugDrawWorld().

◆ m_scratch_m

◆ m_scratch_r

◆ m_scratch_v

◆ m_scratch_world_to_local

btAlignedObjectArray<btQuaternion> btMultiBodyDynamicsWorld::m_scratch_world_to_local
protected

◆ m_scratch_world_to_local1

btAlignedObjectArray<btQuaternion> btMultiBodyDynamicsWorld::m_scratch_world_to_local1
protected

Definition at line 43 of file btMultiBodyDynamicsWorld.h.

Referenced by debugDrawWorld().

◆ m_solverMultiBodyIslandCallback

◆ m_sortedMultiBodyConstraints


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