|
Blender V4.3
|
#include <btSphereBoxCollisionAlgorithm.h>
Inherits btActivatingCollisionAlgorithm.
Classes | |
| struct | CreateFunc |
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 | |
| btDispatcher * | m_dispatcher |
btSphereBoxCollisionAlgorithm provides sphere-box collision detection. Other features are frame-coherency (persistent data) and collision response.
Definition at line 29 of file btSphereBoxCollisionAlgorithm.h.
| btSphereBoxCollisionAlgorithm::btSphereBoxCollisionAlgorithm | ( | btPersistentManifold * | mf, |
| const btCollisionAlgorithmConstructionInfo & | ci, | ||
| const btCollisionObjectWrapper * | body0Wrap, | ||
| const btCollisionObjectWrapper * | body1Wrap, | ||
| bool | isSwapped ) |
Definition at line 24 of file btSphereBoxCollisionAlgorithm.cpp.
References btCollisionObjectWrapper::getCollisionObject(), btDispatcher::getNewManifold(), btCollisionAlgorithm::m_dispatcher, and btDispatcher::needsCollision().
Referenced by btSphereBoxCollisionAlgorithm::CreateFunc::CreateCollisionAlgorithm().
|
virtual |
Definition at line 40 of file btSphereBoxCollisionAlgorithm.cpp.
References btCollisionAlgorithm::m_dispatcher, and btDispatcher::releaseManifold().
|
virtual |
Implements btCollisionAlgorithm.
Definition at line 85 of file btSphereBoxCollisionAlgorithm.cpp.
|
inlinevirtual |
Implements btCollisionAlgorithm.
Definition at line 44 of file btSphereBoxCollisionAlgorithm.h.
References m_manifoldPtr, and btAlignedObjectArray< T >::push_back().
| bool btSphereBoxCollisionAlgorithm::getSphereDistance | ( | const btCollisionObjectWrapper * | boxObjWrap, |
| btVector3 & | v3PointOnBox, | ||
| btVector3 & | normal, | ||
| btScalar & | penetrationDepth, | ||
| const btVector3 & | v3SphereCenter, | ||
| btScalar | fRadius, | ||
| btScalar | maxContactDistance ) |
Definition at line 96 of file btSphereBoxCollisionAlgorithm.cpp.
References btBoxShape(), btMax(), btMin(), btTransform, distance(), btCollisionObjectWrapper::getCollisionShape(), getSpherePenetration(), btCollisionObjectWrapper::getWorldTransform(), and SIMD_EPSILON.
Referenced by processCollision().
| btScalar btSphereBoxCollisionAlgorithm::getSpherePenetration | ( | btVector3 const & | boxHalfExtent, |
| btVector3 const & | sphereRelPos, | ||
| btVector3 & | closestPoint, | ||
| btVector3 & | normal ) |
Definition at line 155 of file btSphereBoxCollisionAlgorithm.cpp.
Referenced by getSphereDistance().
|
virtual |
report a contact. internally this will be kept persistent, and contact reduction is done
Implements btCollisionAlgorithm.
Definition at line 49 of file btSphereBoxCollisionAlgorithm.cpp.
References btManifoldResult::addContactPoint(), btSphereShape(), btCollisionObjectWrapper::getCollisionShape(), getSphereDistance(), btCollisionObjectWrapper::getWorldTransform(), btManifoldResult::refreshContactPoints(), and btManifoldResult::setPersistentManifold().