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

btContinuousConvexCollision implements angular and linear time of impact for convex objects. More...

#include <btContinuousConvexCollision.h>

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

Public Member Functions

 btContinuousConvexCollision (const btConvexShape *shapeA, const btConvexShape *shapeB, btSimplexSolverInterface *simplexSolver, btConvexPenetrationDepthSolver *penetrationDepthSolver)
 
 btContinuousConvexCollision (const btConvexShape *shapeA, const btStaticPlaneShape *plane)
 
virtual bool calcTimeOfImpact (const btTransform &fromA, const btTransform &toA, const btTransform &fromB, const btTransform &toB, CastResult &result)
 cast a convex against another convex object More...
 
- Public Member Functions inherited from btConvexCast
virtual ~btConvexCast ()
 

Private Member Functions

void computeClosestPoints (const btTransform &transA, const btTransform &transB, struct btPointCollector &pointCollector)
 

Private Attributes

btSimplexSolverInterfacem_simplexSolver
 
btConvexPenetrationDepthSolverm_penetrationDepthSolver
 
const btConvexShapem_convexA
 
const btConvexShapem_convexB1
 
const btStaticPlaneShapem_planeShape
 

Detailed Description

btContinuousConvexCollision implements angular and linear time of impact for convex objects.

Based on Brian Mirtich's Conservative Advancement idea (PhD thesis). Algorithm operates in worldspace, in order to keep inbetween motion globally consistent. It uses GJK at the moment. Future improvement would use minkowski sum / supporting vertex, merging innerloops

Definition at line 30 of file btContinuousConvexCollision.h.

Constructor & Destructor Documentation

btContinuousConvexCollision::btContinuousConvexCollision ( const btConvexShape shapeA,
const btConvexShape shapeB,
btSimplexSolverInterface simplexSolver,
btConvexPenetrationDepthSolver penetrationDepthSolver 
)

Definition at line 29 of file btContinuousConvexCollision.cpp.

btContinuousConvexCollision::btContinuousConvexCollision ( const btConvexShape shapeA,
const btStaticPlaneShape plane 
)

Definition at line 37 of file btContinuousConvexCollision.cpp.

Member Function Documentation

bool btContinuousConvexCollision::calcTimeOfImpact ( const btTransform fromA,
const btTransform toA,
const btTransform fromB,
const btTransform toB,
CastResult result 
)
virtual

cast a convex against another convex object

compute linear and angular velocity for this interval, to interpolate

Implements btConvexCast.

Definition at line 90 of file btContinuousConvexCollision.cpp.

void btContinuousConvexCollision::computeClosestPoints ( const btTransform transA,
const btTransform transB,
struct btPointCollector pointCollector 
)
private

Definition at line 49 of file btContinuousConvexCollision.cpp.

Member Data Documentation

const btConvexShape* btContinuousConvexCollision::m_convexA
private

Definition at line 34 of file btContinuousConvexCollision.h.

const btConvexShape* btContinuousConvexCollision::m_convexB1
private

Definition at line 36 of file btContinuousConvexCollision.h.

btConvexPenetrationDepthSolver* btContinuousConvexCollision::m_penetrationDepthSolver
private

Definition at line 33 of file btContinuousConvexCollision.h.

const btStaticPlaneShape* btContinuousConvexCollision::m_planeShape
private

Definition at line 37 of file btContinuousConvexCollision.h.

btSimplexSolverInterface* btContinuousConvexCollision::m_simplexSolver
private

Definition at line 32 of file btContinuousConvexCollision.h.


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