#include <btSubSimplexConvexCast.h>
Public Member Functions | |
btSubsimplexConvexCast (const btConvexShape *shapeA, const btConvexShape *shapeB, btSimplexSolverInterface *simplexSolver) | |
virtual bool | calcTimeOfImpact (const btTransform &fromA, const btTransform &toA, const btTransform &fromB, const btTransform &toB, CastResult &result) |
Private Attributes | |
const btConvexShape * | m_convexA |
const btConvexShape * | m_convexB |
btSimplexSolverInterface * | m_simplexSolver |
btSubsimplexConvexCast implements Gino van den Bergens' paper "Ray Casting against bteral Convex Objects with Application to Continuous Collision Detection" GJK based Ray Cast, optimized version Objects should not start in overlap, otherwise results are not defined.
Definition at line 28 of file btSubSimplexConvexCast.h.
btSubsimplexConvexCast::btSubsimplexConvexCast | ( | const btConvexShape * | shapeA, |
const btConvexShape * | shapeB, | ||
btSimplexSolverInterface * | simplexSolver | ||
) |
virtual bool btSubsimplexConvexCast::calcTimeOfImpact | ( | const btTransform & | fromA, |
const btTransform & | toA, | ||
const btTransform & | fromB, | ||
const btTransform & | toB, | ||
CastResult & | result | ||
) | [virtual] |
SimsimplexConvexCast calculateTimeOfImpact calculates the time of impact+normal for the linear cast (sweep) between two moving objects. Precondition is that objects should not penetration/overlap at the start from the interval. Overlap can be tested using btGjkPairDetector.
Implements btConvexCast.
const btConvexShape* btSubsimplexConvexCast::m_convexA [private] |
Definition at line 31 of file btSubSimplexConvexCast.h.
const btConvexShape* btSubsimplexConvexCast::m_convexB [private] |
Definition at line 32 of file btSubSimplexConvexCast.h.
Definition at line 30 of file btSubSimplexConvexCast.h.