#include <btSoftRigidDynamicsWorld.h>


Public Member Functions | |
| btSoftRigidDynamicsWorld (btDispatcher *dispatcher, btBroadphaseInterface *pairCache, btConstraintSolver *constraintSolver, btCollisionConfiguration *collisionConfiguration) | |
| virtual | ~btSoftRigidDynamicsWorld () |
| virtual void | debugDrawWorld () |
| void | addSoftBody (btSoftBody *body, short int collisionFilterGroup=btBroadphaseProxy::DefaultFilter, short int collisionFilterMask=btBroadphaseProxy::AllFilter) |
| void | removeSoftBody (btSoftBody *body) |
| virtual void | removeCollisionObject (btCollisionObject *collisionObject) |
| removeCollisionObject will first check if it is a rigid body, if so call removeRigidBody otherwise call btDiscreteDynamicsWorld::removeCollisionObject | |
| int | getDrawFlags () const |
| void | setDrawFlags (int f) |
| btSoftBodyWorldInfo & | getWorldInfo () |
| const btSoftBodyWorldInfo & | getWorldInfo () const |
| btSoftBodyArray & | getSoftBodyArray () |
| const btSoftBodyArray & | getSoftBodyArray () const |
| virtual void | rayTest (const btVector3 &rayFromWorld, const btVector3 &rayToWorld, RayResultCallback &resultCallback) const |
| rayTest performs a raycast on all objects in the btCollisionWorld, and calls the resultCallback This allows for several queries: first hit, all hits, any hit, dependent on the value returned by the callback. | |
Static Public Member Functions | |
| static void | rayTestSingle (const btTransform &rayFromTrans, const btTransform &rayToTrans, btCollisionObject *collisionObject, const btCollisionShape *collisionShape, const btTransform &colObjWorldTransform, RayResultCallback &resultCallback) |
| rayTestSingle performs a raycast call and calls the resultCallback. | |
Protected Member Functions | |
| virtual void | predictUnconstraintMotion (btScalar timeStep) |
| virtual void | internalSingleStepSimulation (btScalar timeStep) |
| void | updateSoftBodies () |
| void | solveSoftBodiesConstraints () |
Private Attributes | |
| btSoftBodyArray | m_softBodies |
| int | m_drawFlags |
| bool | m_drawNodeTree |
| bool | m_drawFaceTree |
| bool | m_drawClusterTree |
| btSoftBodyWorldInfo | m_sbi |
Definition at line 24 of file btSoftRigidDynamicsWorld.h.
| btSoftRigidDynamicsWorld::btSoftRigidDynamicsWorld | ( | btDispatcher * | dispatcher, | |
| btBroadphaseInterface * | pairCache, | |||
| btConstraintSolver * | constraintSolver, | |||
| btCollisionConfiguration * | collisionConfiguration | |||
| ) |
Definition at line 28 of file btSoftRigidDynamicsWorld.cpp.
| btSoftRigidDynamicsWorld::~btSoftRigidDynamicsWorld | ( | ) | [virtual] |
Definition at line 42 of file btSoftRigidDynamicsWorld.cpp.
| void btSoftRigidDynamicsWorld::addSoftBody | ( | btSoftBody * | body, | |
| short int | collisionFilterGroup = btBroadphaseProxy::DefaultFilter, |
|||
| short int | collisionFilterMask = btBroadphaseProxy::AllFilter | |||
| ) |
Definition at line 105 of file btSoftRigidDynamicsWorld.cpp.
| void btSoftRigidDynamicsWorld::debugDrawWorld | ( | ) | [virtual] |
Reimplemented from btDiscreteDynamicsWorld.
Definition at line 131 of file btSoftRigidDynamicsWorld.cpp.
| int btSoftRigidDynamicsWorld::getDrawFlags | ( | ) | const [inline] |
Definition at line 60 of file btSoftRigidDynamicsWorld.h.
| const btSoftBodyArray& btSoftRigidDynamicsWorld::getSoftBodyArray | ( | ) | const [inline] |
Definition at line 78 of file btSoftRigidDynamicsWorld.h.
| btSoftBodyArray& btSoftRigidDynamicsWorld::getSoftBodyArray | ( | ) | [inline] |
Definition at line 73 of file btSoftRigidDynamicsWorld.h.
| const btSoftBodyWorldInfo& btSoftRigidDynamicsWorld::getWorldInfo | ( | ) | const [inline] |
Definition at line 67 of file btSoftRigidDynamicsWorld.h.
| btSoftBodyWorldInfo& btSoftRigidDynamicsWorld::getWorldInfo | ( | ) | [inline] |
Definition at line 63 of file btSoftRigidDynamicsWorld.h.
| void btSoftRigidDynamicsWorld::internalSingleStepSimulation | ( | btScalar | timeStep | ) | [protected, virtual] |
solve soft bodies constraints
update soft bodies
Reimplemented from btDiscreteDynamicsWorld.
Definition at line 59 of file btSoftRigidDynamicsWorld.cpp.
| void btSoftRigidDynamicsWorld::predictUnconstraintMotion | ( | btScalar | timeStep | ) | [protected, virtual] |
Reimplemented from btDiscreteDynamicsWorld.
Definition at line 47 of file btSoftRigidDynamicsWorld.cpp.
| void btSoftRigidDynamicsWorld::rayTest | ( | const btVector3 & | rayFromWorld, | |
| const btVector3 & | rayToWorld, | |||
| RayResultCallback & | resultCallback | |||
| ) | const [virtual] |
rayTest performs a raycast on all objects in the btCollisionWorld, and calls the resultCallback This allows for several queries: first hit, all hits, any hit, dependent on the value returned by the callback.
use the broadphase to accelerate the search for objects, based on their aabb and for each object with ray-aabb overlap, perform an exact ray test
use the broadphase to accelerate the search for objects, based on their aabb and for each object with ray-aabb overlap, perform an exact ray test
Reimplemented from btCollisionWorld.
Definition at line 233 of file btSoftRigidDynamicsWorld.cpp.
| void btSoftRigidDynamicsWorld::rayTestSingle | ( | const btTransform & | rayFromTrans, | |
| const btTransform & | rayToTrans, | |||
| btCollisionObject * | collisionObject, | |||
| const btCollisionShape * | collisionShape, | |||
| const btTransform & | colObjWorldTransform, | |||
| RayResultCallback & | resultCallback | |||
| ) | [static] |
rayTestSingle performs a raycast call and calls the resultCallback.
It is used internally by rayTest. In a future implementation, we consider moving the ray test as a virtual method in btCollisionShape. This allows more customization.
Reimplemented from btCollisionWorld.
Definition at line 252 of file btSoftRigidDynamicsWorld.cpp.
| void btSoftRigidDynamicsWorld::removeCollisionObject | ( | btCollisionObject * | collisionObject | ) | [virtual] |
removeCollisionObject will first check if it is a rigid body, if so call removeRigidBody otherwise call btDiscreteDynamicsWorld::removeCollisionObject
Reimplemented from btDiscreteDynamicsWorld.
Definition at line 122 of file btSoftRigidDynamicsWorld.cpp.
| void btSoftRigidDynamicsWorld::removeSoftBody | ( | btSoftBody * | body | ) |
Definition at line 115 of file btSoftRigidDynamicsWorld.cpp.
| void btSoftRigidDynamicsWorld::setDrawFlags | ( | int | f | ) | [inline] |
Definition at line 61 of file btSoftRigidDynamicsWorld.h.
| void btSoftRigidDynamicsWorld::solveSoftBodiesConstraints | ( | ) | [protected] |
Definition at line 89 of file btSoftRigidDynamicsWorld.cpp.
| void btSoftRigidDynamicsWorld::updateSoftBodies | ( | ) | [protected] |
Definition at line 78 of file btSoftRigidDynamicsWorld.cpp.
bool btSoftRigidDynamicsWorld::m_drawClusterTree [private] |
Definition at line 31 of file btSoftRigidDynamicsWorld.h.
bool btSoftRigidDynamicsWorld::m_drawFaceTree [private] |
Definition at line 30 of file btSoftRigidDynamicsWorld.h.
int btSoftRigidDynamicsWorld::m_drawFlags [private] |
Definition at line 28 of file btSoftRigidDynamicsWorld.h.
bool btSoftRigidDynamicsWorld::m_drawNodeTree [private] |
Definition at line 29 of file btSoftRigidDynamicsWorld.h.
Definition at line 32 of file btSoftRigidDynamicsWorld.h.
Definition at line 27 of file btSoftRigidDynamicsWorld.h.
1.6.1