16 #ifndef BT_SPHERE_BOX_COLLISION_ALGORITHM_H
17 #define BT_SPHERE_BOX_COLLISION_ALGORITHM_H
74 #endif //BT_SPHERE_BOX_COLLISION_ALGORITHM_H
btPersistentManifold is a contact point cache, it stays persistent as long as objects are overlapping...
void push_back(const T &_Val)
btSphereBoxCollisionAlgorithm(btPersistentManifold *mf, const btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, bool isSwapped)
virtual void getAllContactManifolds(btManifoldArray &manifoldArray)
btSphereBoxCollisionAlgorithm provides sphere-box collision detection.
This class is not enabled yet (work-in-progress) to more aggressively activate objects.
virtual void processCollision(const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
btManifoldResult is a helper class to manage contact results.
virtual ~btSphereBoxCollisionAlgorithm()
bool getSphereDistance(const btCollisionObjectWrapper *boxObjWrap, btVector3 &v3PointOnBox, btVector3 &normal, btScalar &penetrationDepth, const btVector3 &v3SphereCenter, btScalar fRadius, btScalar maxContactDistance)
virtual void * allocateCollisionAlgorithm(int size)=0
btScalar getSpherePenetration(btVector3 const &boxHalfExtent, btVector3 const &sphereRelPos, btVector3 &closestPoint, btVector3 &normal)
Used by the btCollisionDispatcher to register and create instances for btCollisionAlgorithm.
btCollisionObject can be used to manage collision detection objects.
btVector3 can be used to represent 3D points and vectors.
virtual btCollisionAlgorithm * CreateCollisionAlgorithm(btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap)
btDispatcher * m_dispatcher1
virtual btScalar calculateTimeOfImpact(btCollisionObject *body0, btCollisionObject *body1, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
btCollisionAlgorithm is an collision interface that is compatible with the Broadphase and btDispatche...
btPersistentManifold * m_manifoldPtr
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...