Bullet Collision Detection & Physics Library
Classes | Public Member Functions | Private Attributes | List of all members
btSphereBoxCollisionAlgorithm Class Reference

btSphereBoxCollisionAlgorithm provides sphere-box collision detection. More...

#include <btSphereBoxCollisionAlgorithm.h>

Inheritance diagram for btSphereBoxCollisionAlgorithm:
Inheritance graph
[legend]
Collaboration diagram for btSphereBoxCollisionAlgorithm:
Collaboration graph
[legend]

Classes

struct  CreateFunc
 

Public Member Functions

 btSphereBoxCollisionAlgorithm (btPersistentManifold *mf, const btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, bool isSwapped)
 
virtual ~btSphereBoxCollisionAlgorithm ()
 
virtual void processCollision (const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
 
virtual btScalar calculateTimeOfImpact (btCollisionObject *body0, btCollisionObject *body1, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
 
virtual void getAllContactManifolds (btManifoldArray &manifoldArray)
 
bool getSphereDistance (const btCollisionObjectWrapper *boxObjWrap, btVector3 &v3PointOnBox, btVector3 &normal, btScalar &penetrationDepth, const btVector3 &v3SphereCenter, btScalar fRadius, btScalar maxContactDistance)
 
btScalar getSpherePenetration (btVector3 const &boxHalfExtent, btVector3 const &sphereRelPos, btVector3 &closestPoint, btVector3 &normal)
 
- Public Member Functions inherited from btActivatingCollisionAlgorithm
virtual ~btActivatingCollisionAlgorithm ()
 
- Public Member Functions inherited from btCollisionAlgorithm
 btCollisionAlgorithm ()
 
 btCollisionAlgorithm (const btCollisionAlgorithmConstructionInfo &ci)
 
virtual ~btCollisionAlgorithm ()
 

Private Attributes

bool m_ownManifold
 
btPersistentManifoldm_manifoldPtr
 
bool m_isSwapped
 

Additional Inherited Members

- Protected Member Functions inherited from btActivatingCollisionAlgorithm
 btActivatingCollisionAlgorithm (const btCollisionAlgorithmConstructionInfo &ci)
 
 btActivatingCollisionAlgorithm (const btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap)
 
- Protected Attributes inherited from btCollisionAlgorithm
btDispatcherm_dispatcher
 

Detailed Description

btSphereBoxCollisionAlgorithm provides sphere-box collision detection.

Other features are frame-coherency (persistent data) and collision response.

Definition at line 29 of file btSphereBoxCollisionAlgorithm.h.

Constructor & Destructor Documentation

btSphereBoxCollisionAlgorithm::btSphereBoxCollisionAlgorithm ( btPersistentManifold mf,
const btCollisionAlgorithmConstructionInfo ci,
const btCollisionObjectWrapper body0Wrap,
const btCollisionObjectWrapper body1Wrap,
bool  isSwapped 
)

Definition at line 24 of file btSphereBoxCollisionAlgorithm.cpp.

btSphereBoxCollisionAlgorithm::~btSphereBoxCollisionAlgorithm ( )
virtual

Definition at line 41 of file btSphereBoxCollisionAlgorithm.cpp.

Member Function Documentation

btScalar btSphereBoxCollisionAlgorithm::calculateTimeOfImpact ( btCollisionObject body0,
btCollisionObject body1,
const btDispatcherInfo dispatchInfo,
btManifoldResult resultOut 
)
virtual

Implements btCollisionAlgorithm.

Definition at line 89 of file btSphereBoxCollisionAlgorithm.cpp.

virtual void btSphereBoxCollisionAlgorithm::getAllContactManifolds ( btManifoldArray manifoldArray)
inlinevirtual

Implements btCollisionAlgorithm.

Definition at line 45 of file btSphereBoxCollisionAlgorithm.h.

bool btSphereBoxCollisionAlgorithm::getSphereDistance ( const btCollisionObjectWrapper boxObjWrap,
btVector3 v3PointOnBox,
btVector3 normal,
btScalar penetrationDepth,
const btVector3 v3SphereCenter,
btScalar  fRadius,
btScalar  maxContactDistance 
)

Definition at line 101 of file btSphereBoxCollisionAlgorithm.cpp.

btScalar btSphereBoxCollisionAlgorithm::getSpherePenetration ( btVector3 const &  boxHalfExtent,
btVector3 const &  sphereRelPos,
btVector3 closestPoint,
btVector3 normal 
)

Definition at line 160 of file btSphereBoxCollisionAlgorithm.cpp.

void btSphereBoxCollisionAlgorithm::processCollision ( const btCollisionObjectWrapper body0Wrap,
const btCollisionObjectWrapper body1Wrap,
const btDispatcherInfo dispatchInfo,
btManifoldResult resultOut 
)
virtual

report a contact. internally this will be kept persistent, and contact reduction is done

Implements btCollisionAlgorithm.

Definition at line 52 of file btSphereBoxCollisionAlgorithm.cpp.

Member Data Documentation

bool btSphereBoxCollisionAlgorithm::m_isSwapped
private

Definition at line 33 of file btSphereBoxCollisionAlgorithm.h.

btPersistentManifold* btSphereBoxCollisionAlgorithm::m_manifoldPtr
private

Definition at line 32 of file btSphereBoxCollisionAlgorithm.h.

bool btSphereBoxCollisionAlgorithm::m_ownManifold
private

Definition at line 31 of file btSphereBoxCollisionAlgorithm.h.


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