18#ifndef TESSERACT_COLLISION_TESSERACT_GJK_PAIR_DETECTOR_H
19#define TESSERACT_COLLISION_TESSERACT_GJK_PAIR_DETECTOR_H
23#include <BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h>
24#include <BulletCollision/CollisionShapes/btCollisionMargin.h>
29#include <BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h>
32class btConvexPenetrationDepthSolver;
76 const btConvexShape* objectB,
77 btSimplexSolverInterface* simplexSolver,
78 btConvexPenetrationDepthSolver* penetrationDepthSolver,
82 const btConvexShape* objectB,
87 btSimplexSolverInterface* simplexSolver,
88 btConvexPenetrationDepthSolver* penetrationDepthSolver,
93 class btIDebugDraw* debugDraw,
94 bool swapResults =
false)
override;
This is a modifed Convex to Convex collision algorithm.
Definition: tesseract_gjk_pair_detector.h:51
int m_lastUsedMethod
Definition: tesseract_gjk_pair_detector.h:69
void setIgnoreMargin(bool ignoreMargin)
don't use setIgnoreMargin, it's for Bullet's internal use
Definition: tesseract_gjk_pair_detector.h:112
int m_shapeTypeB
Definition: tesseract_gjk_pair_detector.h:58
int m_fixContactNormalDirection
Definition: tesseract_gjk_pair_detector.h:73
void setCachedSeparatingAxis(const btVector3 &separatingAxis)
Definition: tesseract_gjk_pair_detector.h:101
const btConvexShape * m_minkowskiB
Definition: tesseract_gjk_pair_detector.h:56
const ContactTestData * m_cdata
Definition: tesseract_gjk_pair_detector.h:65
int m_catchDegeneracies
Definition: tesseract_gjk_pair_detector.h:72
void setMinkowskiA(const btConvexShape *minkA)
Definition: tesseract_gjk_pair_detector.h:98
int m_shapeTypeA
Definition: tesseract_gjk_pair_detector.h:57
btScalar m_marginB
Definition: tesseract_gjk_pair_detector.h:60
btScalar m_cachedSeparatingDistance
Definition: tesseract_gjk_pair_detector.h:63
void getClosestPoints(const ClosestPointInput &input, Result &output, class btIDebugDraw *debugDraw, bool swapResults=false) override
Definition: tesseract_gjk_pair_detector.cpp:93
void setMinkowskiB(const btConvexShape *minkB)
Definition: tesseract_gjk_pair_detector.h:100
int m_degenerateSimplex
Definition: tesseract_gjk_pair_detector.h:71
btScalar getCachedSeparatingDistance() const
Definition: tesseract_gjk_pair_detector.h:104
const btConvexShape * m_minkowskiA
Definition: tesseract_gjk_pair_detector.h:55
btSimplexSolverInterface * m_simplexSolver
Definition: tesseract_gjk_pair_detector.h:54
void setPenetrationDepthSolver(btConvexPenetrationDepthSolver *penetrationDepthSolver)
Definition: tesseract_gjk_pair_detector.h:106
bool m_ignoreMargin
Definition: tesseract_gjk_pair_detector.h:62
btScalar m_marginA
Definition: tesseract_gjk_pair_detector.h:59
btConvexPenetrationDepthSolver * m_penetrationDepthSolver
Definition: tesseract_gjk_pair_detector.h:53
const btVector3 & getCachedSeparatingAxis() const
Definition: tesseract_gjk_pair_detector.h:103
int m_curIter
Definition: tesseract_gjk_pair_detector.h:70
void getClosestPointsNonVirtual(const ClosestPointInput &input, Result &output, class btIDebugDraw *debugDraw)
Definition: tesseract_gjk_pair_detector.cpp:669
btVector3 m_cachedSeparatingAxis
Definition: tesseract_gjk_pair_detector.h:52
#define TESSERACT_COMMON_IGNORE_WARNINGS_PUSH
Definition: macros.h:71
Definition: create_convex_hull.cpp:36
Definition: bullet_cast_bvh_manager.h:49
Tesseracts Collision Common Types.