Blender  V3.3
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
btMultiBodyDynamicsWorld Class Reference

#include <btMultiBodyDynamicsWorld.h>

Inheritance diagram for btMultiBodyDynamicsWorld:
btDeformableMultiBodyDynamicsWorld 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 ( btDispatcher dispatcher,
btBroadphaseInterface pairCache,
btMultiBodyConstraintSolver *  constraintSolver,
btCollisionConfiguration collisionConfiguration 
)

◆ ~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

◆ addMultiBodyConstraint()

void btMultiBodyDynamicsWorld::addMultiBodyConstraint ( btMultiBodyConstraint constraint)
virtual

◆ applyGravity()

void btMultiBodyDynamicsWorld::applyGravity ( )
virtual

◆ buildIslands()

void btMultiBodyDynamicsWorld::buildIslands ( )

◆ calculateSimulationIslands()

void btMultiBodyDynamicsWorld::calculateSimulationIslands ( )
protectedvirtual

◆ clearForces()

void btMultiBodyDynamicsWorld::clearForces ( )
virtual

◆ clearMultiBodyConstraintForces()

void btMultiBodyDynamicsWorld::clearMultiBodyConstraintForces ( )
virtual

◆ clearMultiBodyForces()

void btMultiBodyDynamicsWorld::clearMultiBodyForces ( )
virtual

◆ debugDrawMultiBodyConstraint()

void btMultiBodyDynamicsWorld::debugDrawMultiBodyConstraint ( btMultiBodyConstraint constraint)
virtual

Definition at line 667 of file btMultiBodyDynamicsWorld.cpp.

Referenced by debugDrawWorld().

◆ debugDrawWorld()

void btMultiBodyDynamicsWorld::debugDrawWorld ( )
virtual

◆ forwardKinematics()

void btMultiBodyDynamicsWorld::forwardKinematics ( )

◆ getAnalyticsData()

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

◆ getMultiBody() [1/2]

btMultiBody* btMultiBodyDynamicsWorld::getMultiBody ( int  mbIndex)
inline

Definition at line 71 of file btMultiBodyDynamicsWorld.h.

References m_multiBodies.

◆ getMultiBody() [2/2]

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

Definition at line 76 of file btMultiBodyDynamicsWorld.h.

References m_multiBodies.

◆ getMultiBodyConstraint() [1/2]

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

Definition at line 88 of file btMultiBodyDynamicsWorld.h.

References m_multiBodyConstraints.

◆ getMultiBodyConstraint() [2/2]

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

Definition at line 93 of file btMultiBodyDynamicsWorld.h.

References m_multiBodyConstraints.

◆ getNumMultibodies()

virtual int btMultiBodyDynamicsWorld::getNumMultibodies ( ) const
inlinevirtual

Definition at line 66 of file btMultiBodyDynamicsWorld.h.

References m_multiBodies, and btAlignedObjectArray< T >::size().

◆ getNumMultiBodyConstraints()

virtual int btMultiBodyDynamicsWorld::getNumMultiBodyConstraints ( ) const
inlinevirtual

◆ 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

◆ removeMultiBodyConstraint()

void btMultiBodyDynamicsWorld::removeMultiBodyConstraint ( btMultiBodyConstraint constraint)
virtual

◆ serialize()

void btMultiBodyDynamicsWorld::serialize ( btSerializer serializer)
virtual

◆ 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()

void btMultiBodyDynamicsWorld::solveExternalForces ( btContactSolverInfo solverInfo)
virtual

◆ solveInternalConstraints()

void btMultiBodyDynamicsWorld::solveInternalConstraints ( btContactSolverInfo solverInfo)
virtual

◆ updateActivationState()

void btMultiBodyDynamicsWorld::updateActivationState ( btScalar  timeStep)
protectedvirtual

Member Data Documentation

◆ m_multiBodies

btAlignedObjectArray<btMultiBody*> btMultiBodyDynamicsWorld::m_multiBodies
protected

◆ m_multiBodyConstraints

btAlignedObjectArray<btMultiBodyConstraint*> btMultiBodyDynamicsWorld::m_multiBodyConstraints
protected

◆ m_multiBodyConstraintSolver

btMultiBodyConstraintSolver* btMultiBodyDynamicsWorld::m_multiBodyConstraintSolver
protected

Definition at line 37 of file btMultiBodyDynamicsWorld.h.

Referenced by setConstraintSolver(), and setMultiBodyConstraintSolver().

◆ 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

btAlignedObjectArray<btMatrix3x3> btMultiBodyDynamicsWorld::m_scratch_m
protected

◆ m_scratch_r

btAlignedObjectArray<btScalar> btMultiBodyDynamicsWorld::m_scratch_r
protected

◆ m_scratch_v

btAlignedObjectArray<btVector3> btMultiBodyDynamicsWorld::m_scratch_v
protected

◆ 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

MultiBodyInplaceSolverIslandCallback* btMultiBodyDynamicsWorld::m_solverMultiBodyIslandCallback
protected

◆ m_sortedMultiBodyConstraints

btAlignedObjectArray<btMultiBodyConstraint*> btMultiBodyDynamicsWorld::m_sortedMultiBodyConstraints
protected

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