Bullet Collision Detection & Physics Library
Classes | Macros | Functions | Variables
btGjkPairDetector.cpp File Reference
#include "btGjkPairDetector.h"
#include "BulletCollision/CollisionShapes/btConvexShape.h"
#include "BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h"
#include "BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h"
Include dependency graph for btGjkPairDetector.cpp:

Go to the source code of this file.

Classes

struct  btSupportVector
 
struct  btSimplex
 

Macros

#define REL_ERROR2   btScalar(1.0e-6)
 

Functions

static void btComputeSupport (const btConvexShape *convexA, const btTransform &localTransA, const btConvexShape *convexB, const btTransform &localTransB, const btVector3 &dir, bool check2d, btVector3 &supAworld, btVector3 &supBworld, btVector3 &aMinb)
 
void btSimplexInit (btSimplex *s)
 
int btSimplexSize (const btSimplex *s)
 
const btSupportVectorbtSimplexPoint (const btSimplex *s, int idx)
 
void btSupportCopy (btSupportVector *d, const btSupportVector *s)
 
void btVec3Copy (btVector3 *v, const btVector3 *w)
 
void ccdVec3Add (btVector3 *v, const btVector3 *w)
 
void ccdVec3Sub (btVector3 *v, const btVector3 *w)
 
void btVec3Sub2 (btVector3 *d, const btVector3 *v, const btVector3 *w)
 
btScalar btVec3Dot (const btVector3 *a, const btVector3 *b)
 
btScalar ccdVec3Dist2 (const btVector3 *a, const btVector3 *b)
 
void btVec3Scale (btVector3 *d, btScalar k)
 
void btVec3Cross (btVector3 *d, const btVector3 *a, const btVector3 *b)
 
void btTripleCross (const btVector3 *a, const btVector3 *b, const btVector3 *c, btVector3 *d)
 
int ccdEq (btScalar _a, btScalar _b)
 
btScalar ccdVec3X (const btVector3 *v)
 
btScalar ccdVec3Y (const btVector3 *v)
 
btScalar ccdVec3Z (const btVector3 *v)
 
int btVec3Eq (const btVector3 *a, const btVector3 *b)
 
void btSimplexAdd (btSimplex *s, const btSupportVector *v)
 
void btSimplexSet (btSimplex *s, size_t pos, const btSupportVector *a)
 
void btSimplexSetSize (btSimplex *s, int size)
 
const btSupportVectorccdSimplexLast (const btSimplex *s)
 
int ccdSign (btScalar val)
 
btScalar btVec3PointSegmentDist2 (const btVector3 *P, const btVector3 *x0, const btVector3 *b, btVector3 *witness)
 
btScalar btVec3PointTriDist2 (const btVector3 *P, const btVector3 *x0, const btVector3 *B, const btVector3 *C, btVector3 *witness)
 
static int btDoSimplex2 (btSimplex *simplex, btVector3 *dir)
 
static int btDoSimplex3 (btSimplex *simplex, btVector3 *dir)
 
static int btDoSimplex4 (btSimplex *simplex, btVector3 *dir)
 
static int btDoSimplex (btSimplex *simplex, btVector3 *dir)
 

Variables

btScalar gGjkEpaPenetrationTolerance = 0.001
 
int gNumDeepPenetrationChecks = 0
 
int gNumGjkChecks = 0
 
static btVector3 ccd_vec3_origin (0, 0, 0)
 

Macro Definition Documentation

#define REL_ERROR2   btScalar(1.0e-6)

Definition at line 37 of file btGjkPairDetector.cpp.

Function Documentation

static void btComputeSupport ( const btConvexShape convexA,
const btTransform localTransA,
const btConvexShape convexB,
const btTransform localTransB,
const btVector3 dir,
bool  check2d,
btVector3 supAworld,
btVector3 supBworld,
btVector3 aMinb 
)
static

Definition at line 86 of file btGjkPairDetector.cpp.

static int btDoSimplex ( btSimplex simplex,
btVector3 dir 
)
static

Definition at line 656 of file btGjkPairDetector.cpp.

static int btDoSimplex2 ( btSimplex simplex,
btVector3 dir 
)
static

Definition at line 423 of file btGjkPairDetector.cpp.

static int btDoSimplex3 ( btSimplex simplex,
btVector3 dir 
)
static

Definition at line 468 of file btGjkPairDetector.cpp.

static int btDoSimplex4 ( btSimplex simplex,
btVector3 dir 
)
static

Definition at line 565 of file btGjkPairDetector.cpp.

void btSimplexAdd ( btSimplex s,
const btSupportVector v 
)
inline

Definition at line 246 of file btGjkPairDetector.cpp.

void btSimplexInit ( btSimplex s)
inline

Definition at line 125 of file btGjkPairDetector.cpp.

const btSupportVector* btSimplexPoint ( const btSimplex s,
int  idx 
)
inline

Definition at line 135 of file btGjkPairDetector.cpp.

void btSimplexSet ( btSimplex s,
size_t  pos,
const btSupportVector a 
)
inline

Definition at line 254 of file btGjkPairDetector.cpp.

void btSimplexSetSize ( btSimplex s,
int  size 
)
inline

Definition at line 259 of file btGjkPairDetector.cpp.

int btSimplexSize ( const btSimplex s)
inline

Definition at line 130 of file btGjkPairDetector.cpp.

void btSupportCopy ( btSupportVector d,
const btSupportVector s 
)
inline

Definition at line 140 of file btGjkPairDetector.cpp.

void btTripleCross ( const btVector3 a,
const btVector3 b,
const btVector3 c,
btVector3 d 
)
inline

Definition at line 197 of file btGjkPairDetector.cpp.

void btVec3Copy ( btVector3 v,
const btVector3 w 
)
inline

Definition at line 145 of file btGjkPairDetector.cpp.

void btVec3Cross ( btVector3 d,
const btVector3 a,
const btVector3 b 
)
inline

Definition at line 190 of file btGjkPairDetector.cpp.

btScalar btVec3Dot ( const btVector3 a,
const btVector3 b 
)
inline

Definition at line 167 of file btGjkPairDetector.cpp.

int btVec3Eq ( const btVector3 a,
const btVector3 b 
)
inline

Definition at line 238 of file btGjkPairDetector.cpp.

btScalar btVec3PointSegmentDist2 ( const btVector3 P,
const btVector3 x0,
const btVector3 b,
btVector3 witness 
)
inline

Definition at line 281 of file btGjkPairDetector.cpp.

btScalar btVec3PointTriDist2 ( const btVector3 P,
const btVector3 x0,
const btVector3 B,
const btVector3 C,
btVector3 witness 
)

Definition at line 342 of file btGjkPairDetector.cpp.

void btVec3Scale ( btVector3 d,
btScalar  k 
)
inline

Definition at line 183 of file btGjkPairDetector.cpp.

void btVec3Sub2 ( btVector3 d,
const btVector3 v,
const btVector3 w 
)
inline

Definition at line 162 of file btGjkPairDetector.cpp.

int ccdEq ( btScalar  _a,
btScalar  _b 
)
inline

Definition at line 205 of file btGjkPairDetector.cpp.

int ccdSign ( btScalar  val)
inline

Definition at line 269 of file btGjkPairDetector.cpp.

const btSupportVector* ccdSimplexLast ( const btSimplex s)
inline

Definition at line 264 of file btGjkPairDetector.cpp.

void ccdVec3Add ( btVector3 v,
const btVector3 w 
)
inline

Definition at line 150 of file btGjkPairDetector.cpp.

btScalar ccdVec3Dist2 ( const btVector3 a,
const btVector3 b 
)
inline

Definition at line 175 of file btGjkPairDetector.cpp.

void ccdVec3Sub ( btVector3 v,
const btVector3 w 
)
inline

Definition at line 158 of file btGjkPairDetector.cpp.

btScalar ccdVec3X ( const btVector3 v)

Definition at line 224 of file btGjkPairDetector.cpp.

btScalar ccdVec3Y ( const btVector3 v)

Definition at line 229 of file btGjkPairDetector.cpp.

btScalar ccdVec3Z ( const btVector3 v)

Definition at line 234 of file btGjkPairDetector.cpp.

Variable Documentation

btVector3 ccd_vec3_origin(0, 0, 0)
static
btScalar gGjkEpaPenetrationTolerance = 0.001

Definition at line 38 of file btGjkPairDetector.cpp.

int gNumDeepPenetrationChecks = 0

Definition at line 42 of file btGjkPairDetector.cpp.

int gNumGjkChecks = 0

Definition at line 43 of file btGjkPairDetector.cpp.