169 if (squareMot0 < col0->getCcdSquareMotionThreshold() &&
171 return resultFraction;
204 if (resultFraction > result.m_fraction)
205 resultFraction = result.m_fraction;
237 if (resultFraction > result.m_fraction)
238 resultFraction = result.m_fraction;
243 return resultFraction;
int m_minimumPointsPerturbationThreshold
virtual void releaseManifold(btPersistentManifold *manifold)=0
btPersistentManifold is a contact point cache, it stays persistent as long as objects are overlapping...
btScalar getCcdSweptSphereRadius() const
Swept sphere radius (0.0 by default), see btConvexConvexAlgorithm::
btScalar getContactBreakingThreshold() const
ConvexPenetrationDepthSolver provides an interface for penetration depth calculation.
void setMinkowskiB(const btConvexShape *minkB)
void setPersistentManifold(btPersistentManifold *manifoldPtr)
This class is not enabled yet (work-in-progress) to more aggressively activate objects.
void setHitFraction(btScalar hitFraction)
void refreshContactPoints()
void setMinkowskiA(const btConvexShape *minkA)
virtual btScalar calculateTimeOfImpact(btCollisionObject *body0, btCollisionObject *body1, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
The btSphereShape implements an implicit sphere, centered around a local origin with radius...
btManifoldResult is a helper class to manage contact results.
class btIDebugDraw * m_debugDraw
btPersistentManifold * m_manifoldPtr
btDispatcher * m_dispatcher
btScalar getCcdSquareMotionThreshold() const
The btConvexShape is an abstract shape interface, implemented by all convex shapes such as btBoxShape...
const btTransform & getInterpolationWorldTransform() const
GjkConvexCast performs a raycast on a convex object using support mapping.
virtual bool calcTimeOfImpact(const btTransform &fromA, const btTransform &toA, const btTransform &fromB, const btTransform &toB, CastResult &result)
cast a convex against another convex object
btTransform & getWorldTransform()
RayResult stores the closest result alternatively, add a callback method to decide about closest/all ...
#define btSimplexSolverInterface
btVoronoiSimplexSolver is an implementation of the closest point distance algorithm from a 1-4 points...
int m_numPerturbationIterations
const btTransform & getWorldTransform() const
btCollisionObject can be used to manage collision detection objects.
virtual btPersistentManifold * getNewManifold(const btCollisionObject *b0, const btCollisionObject *b1)=0
virtual btScalar getMargin() const =0
const btCollisionShape * getCollisionShape() const
btScalar getHitFraction() const
btVector3 can be used to represent 3D points and vectors.
int m_numPerturbationIterations
btSimplexSolverInterface * m_simplexSolver
CreateFunc(btSimplexSolverInterface *simplexSolver, btConvexPenetrationDepthSolver *pdSolver)
btGjkPairDetector uses GJK to implement the btDiscreteCollisionDetectorInterface
btConvex2dConvex2dAlgorithm(btPersistentManifold *mf, const btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, btSimplexSolverInterface *simplexSolver, btConvexPenetrationDepthSolver *pdSolver, int numPerturbationIterations, int minimumPointsPerturbationThreshold)
virtual void processCollision(const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
virtual ~btConvex2dConvex2dAlgorithm()
btSimplexSolverInterface * m_simplexSolver
btConvexPenetrationDepthSolver * m_pdSolver
const btCollisionShape * getCollisionShape() const
btScalar gContactBreakingThreshold
void setLowLevelOfDetail(bool useLowLevel)
int m_minimumPointsPerturbationThreshold
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
btConvexPenetrationDepthSolver * m_pdSolver
virtual void getClosestPoints(const ClosestPointInput &input, Result &output, class btIDebugDraw *debugDraw, bool swapResults=false)
const btCollisionObject * getCollisionObject() const