Blender V2.61 - r43446
|
btManifoldResult is a helper class to manage contact results. More...
#include <btManifoldResult.h>
Public Member Functions | |
btManifoldResult () | |
btManifoldResult (btCollisionObject *body0, btCollisionObject *body1) | |
virtual | ~btManifoldResult () |
void | setPersistentManifold (btPersistentManifold *manifoldPtr) |
const btPersistentManifold * | getPersistentManifold () const |
btPersistentManifold * | getPersistentManifold () |
virtual void | setShapeIdentifiersA (int partId0, int index0) |
setShapeIdentifiersA/B provides experimental support for per-triangle material / custom material combiner | |
virtual void | setShapeIdentifiersB (int partId1, int index1) |
virtual void | addContactPoint (const btVector3 &normalOnBInWorld, const btVector3 &pointInWorld, btScalar depth) |
SIMD_FORCE_INLINE void | refreshContactPoints () |
const btCollisionObject * | getBody0Internal () const |
const btCollisionObject * | getBody1Internal () const |
Protected Attributes | |
btPersistentManifold * | m_manifoldPtr |
btTransform | m_rootTransA |
btTransform | m_rootTransB |
btCollisionObject * | m_body0 |
btCollisionObject * | m_body1 |
int | m_partId0 |
int | m_partId1 |
int | m_index0 |
int | m_index1 |
btManifoldResult is a helper class to manage contact results.
Definition at line 35 of file btManifoldResult.h.
btManifoldResult::btManifoldResult | ( | ) | [inline] |
Definition at line 55 of file btManifoldResult.h.
btManifoldResult::btManifoldResult | ( | btCollisionObject * | body0, |
btCollisionObject * | body1 | ||
) |
Definition at line 46 of file btManifoldResult.cpp.
References m_rootTransA, and m_rootTransB.
virtual btManifoldResult::~btManifoldResult | ( | ) | [inline, virtual] |
Definition at line 68 of file btManifoldResult.h.
void btManifoldResult::addContactPoint | ( | const btVector3 & | normalOnBInWorld, |
const btVector3 & | pointInWorld, | ||
btScalar | depth | ||
) | [virtual] |
Implements btDiscreteCollisionDetectorInterface::Result.
Reimplemented in btBridgedManifoldResult, and btPerturbedContactResult.
Definition at line 62 of file btManifoldResult.cpp.
References btAssert, calculateCombinedFriction(), calculateCombinedRestitution(), gContactAddedCallback, btTransform::invXform(), m_body0, m_body1, btManifoldPoint::m_combinedFriction, btManifoldPoint::m_combinedRestitution, btManifoldPoint::m_index0, m_index0, btManifoldPoint::m_index1, m_index1, m_manifoldPtr, m_partId0, btManifoldPoint::m_partId0, btManifoldPoint::m_partId1, m_partId1, btManifoldPoint::m_positionWorldOnA, btManifoldPoint::m_positionWorldOnB, m_rootTransA, and m_rootTransB.
Referenced by btPerturbedContactResult::addContactPoint(), btGImpactCollisionAlgorithm::addContactPoint(), b2CollidePolygons(), btConvexPlaneCollisionAlgorithm::collideSingleContact(), btConvexConvexAlgorithm::processCollision(), btSphereBoxCollisionAlgorithm::processCollision(), and btSphereSphereCollisionAlgorithm::processCollision().
const btCollisionObject* btManifoldResult::getBody0Internal | ( | ) | const [inline] |
Definition at line 116 of file btManifoldResult.h.
References m_body0.
Referenced by btCompoundLeafCallback::ProcessChildShape(), and btConvexTriangleCallback::processTriangle().
const btCollisionObject* btManifoldResult::getBody1Internal | ( | ) | const [inline] |
Definition at line 121 of file btManifoldResult.h.
References m_body1.
const btPersistentManifold* btManifoldResult::getPersistentManifold | ( | ) | const [inline] |
Definition at line 75 of file btManifoldResult.h.
References m_manifoldPtr.
Referenced by btConvexConvexAlgorithm::processCollision(), and btConvexPlaneCollisionAlgorithm::processCollision().
btPersistentManifold* btManifoldResult::getPersistentManifold | ( | ) | [inline] |
Definition at line 79 of file btManifoldResult.h.
References m_manifoldPtr.
SIMD_FORCE_INLINE void btManifoldResult::refreshContactPoints | ( | ) | [inline] |
Definition at line 99 of file btManifoldResult.h.
References btAssert, m_body0, m_manifoldPtr, m_rootTransA, and m_rootTransB.
Referenced by btConvexConcaveCollisionAlgorithm::processCollision(), btConvexConvexAlgorithm::processCollision(), btConvexPlaneCollisionAlgorithm::processCollision(), btConvex2dConvex2dAlgorithm::processCollision(), btCompoundCollisionAlgorithm::processCollision(), btBoxBoxCollisionAlgorithm::processCollision(), btSphereBoxCollisionAlgorithm::processCollision(), btBox2dBox2dCollisionAlgorithm::processCollision(), btSphereTriangleCollisionAlgorithm::processCollision(), and btSphereSphereCollisionAlgorithm::processCollision().
void btManifoldResult::setPersistentManifold | ( | btPersistentManifold * | manifoldPtr | ) | [inline] |
Definition at line 70 of file btManifoldResult.h.
References m_manifoldPtr.
Referenced by btGImpactCollisionAlgorithm::checkManifold(), btConvexPlaneCollisionAlgorithm::collideSingleContact(), btConvexConcaveCollisionAlgorithm::processCollision(), btConvexConvexAlgorithm::processCollision(), btConvex2dConvex2dAlgorithm::processCollision(), btBoxBoxCollisionAlgorithm::processCollision(), btCompoundCollisionAlgorithm::processCollision(), btBox2dBox2dCollisionAlgorithm::processCollision(), btSphereBoxCollisionAlgorithm::processCollision(), btSphereTriangleCollisionAlgorithm::processCollision(), and btSphereSphereCollisionAlgorithm::processCollision().
virtual void btManifoldResult::setShapeIdentifiersA | ( | int | partId0, |
int | index0 | ||
) | [inline, virtual] |
setShapeIdentifiersA/B provides experimental support for per-triangle material / custom material combiner
Implements btDiscreteCollisionDetectorInterface::Result.
Definition at line 84 of file btManifoldResult.h.
References m_index0, and m_partId0.
Referenced by btGImpactCollisionAlgorithm::addContactPoint(), btGImpactCollisionAlgorithm::convex_vs_convex_collision(), btCompoundLeafCallback::ProcessChildShape(), btConvexTriangleCallback::processTriangle(), and btGImpactCollisionAlgorithm::shape_vs_shape_collision().
virtual void btManifoldResult::setShapeIdentifiersB | ( | int | partId1, |
int | index1 | ||
) | [inline, virtual] |
Implements btDiscreteCollisionDetectorInterface::Result.
Definition at line 90 of file btManifoldResult.h.
References m_index1, and m_partId1.
Referenced by btGImpactCollisionAlgorithm::addContactPoint(), btGImpactCollisionAlgorithm::convex_vs_convex_collision(), btCompoundLeafCallback::ProcessChildShape(), btConvexTriangleCallback::processTriangle(), and btGImpactCollisionAlgorithm::shape_vs_shape_collision().
btCollisionObject* btManifoldResult::m_body0 [protected] |
Definition at line 45 of file btManifoldResult.h.
Referenced by btBridgedManifoldResult::addContactPoint(), addContactPoint(), getBody0Internal(), and refreshContactPoints().
btCollisionObject* btManifoldResult::m_body1 [protected] |
Definition at line 46 of file btManifoldResult.h.
Referenced by btBridgedManifoldResult::addContactPoint(), addContactPoint(), and getBody1Internal().
int btManifoldResult::m_index0 [protected] |
Definition at line 49 of file btManifoldResult.h.
Referenced by btBridgedManifoldResult::addContactPoint(), addContactPoint(), and setShapeIdentifiersA().
int btManifoldResult::m_index1 [protected] |
Definition at line 50 of file btManifoldResult.h.
Referenced by btBridgedManifoldResult::addContactPoint(), addContactPoint(), and setShapeIdentifiersB().
btPersistentManifold* btManifoldResult::m_manifoldPtr [protected] |
Definition at line 39 of file btManifoldResult.h.
Referenced by btBridgedManifoldResult::addContactPoint(), addContactPoint(), getPersistentManifold(), refreshContactPoints(), and setPersistentManifold().
int btManifoldResult::m_partId0 [protected] |
Definition at line 47 of file btManifoldResult.h.
Referenced by btBridgedManifoldResult::addContactPoint(), addContactPoint(), and setShapeIdentifiersA().
int btManifoldResult::m_partId1 [protected] |
Definition at line 48 of file btManifoldResult.h.
Referenced by btBridgedManifoldResult::addContactPoint(), addContactPoint(), and setShapeIdentifiersB().
btTransform btManifoldResult::m_rootTransA [protected] |
Definition at line 42 of file btManifoldResult.h.
Referenced by btBridgedManifoldResult::addContactPoint(), addContactPoint(), btManifoldResult(), and refreshContactPoints().
btTransform btManifoldResult::m_rootTransB [protected] |
Definition at line 43 of file btManifoldResult.h.
Referenced by btBridgedManifoldResult::addContactPoint(), addContactPoint(), btManifoldResult(), and refreshContactPoints().