Classes | Protected Member Functions | Protected Attributes
btGImpactCollisionAlgorithm Class Reference

Collision Algorithm for GImpact Shapes. More...

#include <btGImpactCollisionAlgorithm.h>

Inheritance diagram for btGImpactCollisionAlgorithm:
Inheritance graph
[legend]

List of all members.

Classes

struct  CreateFunc

Protected Member Functions

void addContactPoint (btCollisionObject *body0, btCollisionObject *body1, const btVector3 &point, const btVector3 &normal, btScalar distance)
SIMD_FORCE_INLINE void checkConvexAlgorithm (btCollisionObject *body0, btCollisionObject *body1)
SIMD_FORCE_INLINE void checkManifold (btCollisionObject *body0, btCollisionObject *body1)
SIMD_FORCE_INLINE void clearCache ()
SIMD_FORCE_INLINE void destroyContactManifolds ()
SIMD_FORCE_INLINE void destroyConvexAlgorithm ()
SIMD_FORCE_INLINE
btPersistentManifold * 
getLastManifold ()
SIMD_FORCE_INLINE
btCollisionAlgorithm
newAlgorithm (btCollisionObject *body0, btCollisionObject *body1)
SIMD_FORCE_INLINE
btPersistentManifold * 
newContactManifold (btCollisionObject *body0, btCollisionObject *body1)
 Creates a new contact point.

Protected Attributes

btCollisionAlgorithmm_convex_algorithm
const btDispatcherInfom_dispatchInfo
btPersistentManifold * m_manifoldPtr
int m_part0
int m_part1
btManifoldResultm_resultOut
int m_triface0
int m_triface1
void collide_gjk_triangles (btCollisionObject *body0, btCollisionObject *body1, btGImpactMeshShapePart *shape0, btGImpactMeshShapePart *shape1, const int *pairs, int pair_count)
void collide_sat_triangles (btCollisionObject *body0, btCollisionObject *body1, btGImpactMeshShapePart *shape0, btGImpactMeshShapePart *shape1, const int *pairs, int pair_count)
void shape_vs_shape_collision (btCollisionObject *body0, btCollisionObject *body1, btCollisionShape *shape0, btCollisionShape *shape1)
void convex_vs_convex_collision (btCollisionObject *body0, btCollisionObject *body1, btCollisionShape *shape0, btCollisionShape *shape1)
void gimpact_vs_gimpact_find_pairs (const btTransform &trans0, const btTransform &trans1, btGImpactShapeInterface *shape0, btGImpactShapeInterface *shape1, btPairSet &pairset)
void gimpact_vs_shape_find_pairs (const btTransform &trans0, const btTransform &trans1, btGImpactShapeInterface *shape0, btCollisionShape *shape1, btAlignedObjectArray< int > &collided_primitives)
void gimpacttrimeshpart_vs_plane_collision (btCollisionObject *body0, btCollisionObject *body1, btGImpactMeshShapePart *shape0, btStaticPlaneShape *shape1, bool swapped)
 btGImpactCollisionAlgorithm (const btCollisionAlgorithmConstructionInfo &ci, btCollisionObject *body0, btCollisionObject *body1)
virtual ~btGImpactCollisionAlgorithm ()
virtual void processCollision (btCollisionObject *body0, btCollisionObject *body1, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
btScalar calculateTimeOfImpact (btCollisionObject *body0, btCollisionObject *body1, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
virtual void getAllContactManifolds (btManifoldArray &manifoldArray)
void gimpact_vs_gimpact (btCollisionObject *body0, btCollisionObject *body1, btGImpactShapeInterface *shape0, btGImpactShapeInterface *shape1)
 Collides two gimpact shapes.
void gimpact_vs_shape (btCollisionObject *body0, btCollisionObject *body1, btGImpactShapeInterface *shape0, btCollisionShape *shape1, bool swapped)
void gimpact_vs_compoundshape (btCollisionObject *body0, btCollisionObject *body1, btGImpactShapeInterface *shape0, btCompoundShape *shape1, bool swapped)
void gimpact_vs_concave (btCollisionObject *body0, btCollisionObject *body1, btGImpactShapeInterface *shape0, btConcaveShape *shape1, bool swapped)
void setFace0 (int value)
 Accessor/Mutator pairs for Part and triangleID.
int getFace0 ()
void setFace1 (int value)
int getFace1 ()
void setPart0 (int value)
int getPart0 ()
void setPart1 (int value)
int getPart1 ()
static void registerAlgorithm (btCollisionDispatcher *dispatcher)
 Use this function for register the algorithm externally.

Detailed Description

Collision Algorithm for GImpact Shapes.

For register this algorithm in Bullet, proceed as following:

btCollisionDispatcher * dispatcher = static_cast<btCollisionDispatcher *>(m_dynamicsWorld ->getDispatcher());
btGImpactCollisionAlgorithm::registerAlgorithm(dispatcher);

Definition at line 54 of file btGImpactCollisionAlgorithm.h.


Constructor & Destructor Documentation

btGImpactCollisionAlgorithm::btGImpactCollisionAlgorithm ( const btCollisionAlgorithmConstructionInfo ci,
btCollisionObject *  body0,
btCollisionObject *  body1 
)

Member Function Documentation

void btGImpactCollisionAlgorithm::addContactPoint ( btCollisionObject *  body0,
btCollisionObject *  body1,
const btVector3 &  point,
const btVector3 &  normal,
btScalar  distance 
) [protected]
btScalar btGImpactCollisionAlgorithm::calculateTimeOfImpact ( btCollisionObject *  body0,
btCollisionObject *  body1,
const btDispatcherInfo dispatchInfo,
btManifoldResult resultOut 
) [virtual]

Implements btCollisionAlgorithm.

SIMD_FORCE_INLINE void btGImpactCollisionAlgorithm::checkConvexAlgorithm ( btCollisionObject *  body0,
btCollisionObject *  body1 
) [inline, protected]

Definition at line 130 of file btGImpactCollisionAlgorithm.h.

SIMD_FORCE_INLINE void btGImpactCollisionAlgorithm::checkManifold ( btCollisionObject *  body0,
btCollisionObject *  body1 
) [inline, protected]

Definition at line 109 of file btGImpactCollisionAlgorithm.h.

Definition at line 91 of file btGImpactCollisionAlgorithm.h.

void btGImpactCollisionAlgorithm::collide_gjk_triangles ( btCollisionObject *  body0,
btCollisionObject *  body1,
btGImpactMeshShapePart shape0,
btGImpactMeshShapePart shape1,
const int *  pairs,
int  pair_count 
) [protected]

Collision routines

void btGImpactCollisionAlgorithm::collide_sat_triangles ( btCollisionObject *  body0,
btCollisionObject *  body1,
btGImpactMeshShapePart shape0,
btGImpactMeshShapePart shape1,
const int *  pairs,
int  pair_count 
) [protected]
void btGImpactCollisionAlgorithm::convex_vs_convex_collision ( btCollisionObject *  body0,
btCollisionObject *  body1,
btCollisionShape shape0,
btCollisionShape shape1 
) [protected]

Definition at line 84 of file btGImpactCollisionAlgorithm.h.

Definition at line 74 of file btGImpactCollisionAlgorithm.h.

virtual void btGImpactCollisionAlgorithm::getAllContactManifolds ( btManifoldArray manifoldArray) [inline, virtual]

Implements btCollisionAlgorithm.

Definition at line 207 of file btGImpactCollisionAlgorithm.h.

Definition at line 268 of file btGImpactCollisionAlgorithm.h.

Definition at line 276 of file btGImpactCollisionAlgorithm.h.

SIMD_FORCE_INLINE btPersistentManifold* btGImpactCollisionAlgorithm::getLastManifold ( ) [inline, protected]

Definition at line 102 of file btGImpactCollisionAlgorithm.h.

Definition at line 284 of file btGImpactCollisionAlgorithm.h.

Definition at line 292 of file btGImpactCollisionAlgorithm.h.

void btGImpactCollisionAlgorithm::gimpact_vs_compoundshape ( btCollisionObject *  body0,
btCollisionObject *  body1,
btGImpactShapeInterface shape0,
btCompoundShape *  shape1,
bool  swapped 
)
void btGImpactCollisionAlgorithm::gimpact_vs_concave ( btCollisionObject *  body0,
btCollisionObject *  body1,
btGImpactShapeInterface shape0,
btConcaveShape shape1,
bool  swapped 
)
void btGImpactCollisionAlgorithm::gimpact_vs_gimpact ( btCollisionObject *  body0,
btCollisionObject *  body1,
btGImpactShapeInterface shape0,
btGImpactShapeInterface shape1 
)

Collides two gimpact shapes.

Precondition:
shape0 and shape1 couldn't be btGImpactMeshShape objects
void btGImpactCollisionAlgorithm::gimpact_vs_gimpact_find_pairs ( const btTransform trans0,
const btTransform trans1,
btGImpactShapeInterface shape0,
btGImpactShapeInterface shape1,
btPairSet pairset 
) [protected]
void btGImpactCollisionAlgorithm::gimpact_vs_shape ( btCollisionObject *  body0,
btCollisionObject *  body1,
btGImpactShapeInterface shape0,
btCollisionShape shape1,
bool  swapped 
)
void btGImpactCollisionAlgorithm::gimpact_vs_shape_find_pairs ( const btTransform trans0,
const btTransform trans1,
btGImpactShapeInterface shape0,
btCollisionShape shape1,
btAlignedObjectArray< int > &  collided_primitives 
) [protected]
void btGImpactCollisionAlgorithm::gimpacttrimeshpart_vs_plane_collision ( btCollisionObject *  body0,
btCollisionObject *  body1,
btGImpactMeshShapePart shape0,
btStaticPlaneShape *  shape1,
bool  swapped 
) [protected]
SIMD_FORCE_INLINE btCollisionAlgorithm* btGImpactCollisionAlgorithm::newAlgorithm ( btCollisionObject *  body0,
btCollisionObject *  body1 
) [inline, protected]

Definition at line 120 of file btGImpactCollisionAlgorithm.h.

SIMD_FORCE_INLINE btPersistentManifold* btGImpactCollisionAlgorithm::newContactManifold ( btCollisionObject *  body0,
btCollisionObject *  body1 
) [inline, protected]

Creates a new contact point.

Definition at line 68 of file btGImpactCollisionAlgorithm.h.

virtual void btGImpactCollisionAlgorithm::processCollision ( btCollisionObject *  body0,
btCollisionObject *  body1,
const btDispatcherInfo dispatchInfo,
btManifoldResult resultOut 
) [virtual]

Implements btCollisionAlgorithm.

Use this function for register the algorithm externally.

void btGImpactCollisionAlgorithm::setFace0 ( int  value) [inline]

Accessor/Mutator pairs for Part and triangleID.

Definition at line 264 of file btGImpactCollisionAlgorithm.h.

void btGImpactCollisionAlgorithm::setFace1 ( int  value) [inline]

Definition at line 272 of file btGImpactCollisionAlgorithm.h.

void btGImpactCollisionAlgorithm::setPart0 ( int  value) [inline]

Definition at line 280 of file btGImpactCollisionAlgorithm.h.

void btGImpactCollisionAlgorithm::setPart1 ( int  value) [inline]

Definition at line 288 of file btGImpactCollisionAlgorithm.h.

void btGImpactCollisionAlgorithm::shape_vs_shape_collision ( btCollisionObject *  body0,
btCollisionObject *  body1,
btCollisionShape shape0,
btCollisionShape shape1 
) [protected]

Member Data Documentation

Definition at line 57 of file btGImpactCollisionAlgorithm.h.

Definition at line 60 of file btGImpactCollisionAlgorithm.h.

btPersistentManifold* btGImpactCollisionAlgorithm::m_manifoldPtr [protected]

Definition at line 58 of file btGImpactCollisionAlgorithm.h.

Definition at line 62 of file btGImpactCollisionAlgorithm.h.

Definition at line 64 of file btGImpactCollisionAlgorithm.h.

Definition at line 59 of file btGImpactCollisionAlgorithm.h.

Definition at line 61 of file btGImpactCollisionAlgorithm.h.

Definition at line 63 of file btGImpactCollisionAlgorithm.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


bullet
Author(s): Erwin Coumans, ROS package maintained by Tully Foote
autogenerated on Wed Oct 31 2012 07:54:32