Blender  V3.3
Public Member Functions | List of all members
btSubsimplexConvexCast Class Reference

#include <btSubSimplexConvexCast.h>

Inheritance diagram for btSubsimplexConvexCast:
btConvexCast

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)
 
- Public Member Functions inherited from btConvexCast
virtual ~btConvexCast ()
 

Detailed Description

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 27 of file btSubSimplexConvexCast.h.

Constructor & Destructor Documentation

◆ btSubsimplexConvexCast()

btSubsimplexConvexCast::btSubsimplexConvexCast ( const btConvexShape shapeA,
const btConvexShape shapeB,
btSimplexSolverInterface simplexSolver 
)

Definition at line 24 of file btSubSimplexConvexCast.cpp.

Member Function Documentation

◆ calcTimeOfImpact()

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.

take relative motion

Just like regular GJK only add the vertex if it isn't already (close) to current vertex, it would lead to divisions by zero and NaN etc.

Implements btConvexCast.

Definition at line 32 of file btSubSimplexConvexCast.cpp.

References btTransform, btVector3, Freestyle::c, r, result, SIMD_EPSILON, v, and w().

Referenced by btSoftBodyConcaveCollisionAlgorithm::calculateTimeOfImpact(), and btTriangleConvexcastCallback::processTriangle().


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