Classes | Public Member Functions | Private Attributes

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]

List of all members.

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)

Private Attributes

bool m_ownManifold
btPersistentManifoldm_manifoldPtr
bool m_isSwapped

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  )  [inline, virtual]

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

Definition at line 33 of file btSphereBoxCollisionAlgorithm.h.

Definition at line 32 of file btSphereBoxCollisionAlgorithm.h.

Definition at line 31 of file btSphereBoxCollisionAlgorithm.h.


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