Bullet Collision Detection & Physics Library: btGjkPairDetector.cpp File Reference

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 btSupportVector * | btSimplexPoint (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 btSupportVector * | ccdSimplexLast (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
static btVector3 | ccd_vec3_origin (0, 0, 0)

## Macro Definition Documentation

## ◆ REL_ERROR2

#define REL_ERROR2 btScalar(1.0e-6)

Definition at line 35 of file btGjkPairDetector.cpp.

## Function Documentation

## ◆ btComputeSupport()

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 80 of file btGjkPairDetector.cpp.

## ◆ btDoSimplex()

static int btDoSimplex | ( | btSimplex * | simplex,
|  | btVector3 * | dir
| ) |  |
| static

Definition at line 665 of file btGjkPairDetector.cpp.

## ◆ btDoSimplex2()

static int btDoSimplex2 | ( | btSimplex * | simplex,
|  | btVector3 * | dir
| ) |  |
| static

Definition at line 414 of file btGjkPairDetector.cpp.

## ◆ btDoSimplex3()

static int btDoSimplex3 | ( | btSimplex * | simplex,
|  | btVector3 * | dir
| ) |  |
| static

Definition at line 460 of file btGjkPairDetector.cpp.

## ◆ btDoSimplex4()

static int btDoSimplex4 | ( | btSimplex * | simplex,
|  | btVector3 * | dir
| ) |  |
| static

Definition at line 569 of file btGjkPairDetector.cpp.

## ◆ btSimplexAdd()

void btSimplexAdd | ( | btSimplex * | s,
|  | const btSupportVector * | v
| ) |  |
| inline

Definition at line 235 of file btGjkPairDetector.cpp.

## ◆ btSimplexInit()

void btSimplexInit | ( | btSimplex * | s | ) |
| inline

Definition at line 118 of file btGjkPairDetector.cpp.

## ◆ btSimplexPoint()

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

Definition at line 128 of file btGjkPairDetector.cpp.

## ◆ btSimplexSet()

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

Definition at line 242 of file btGjkPairDetector.cpp.

## ◆ btSimplexSetSize()

void btSimplexSetSize | ( | btSimplex * | s,
|  | int | size
| ) |  |
| inline

Definition at line 247 of file btGjkPairDetector.cpp.

## ◆ btSimplexSize()

int btSimplexSize | ( | const btSimplex * | s | ) |
| inline

Definition at line 123 of file btGjkPairDetector.cpp.

## ◆ btSupportCopy()

void btSupportCopy | ( | btSupportVector * | d,
|  | const btSupportVector * | s
| ) |  |
| inline

Definition at line 133 of file btGjkPairDetector.cpp.

## ◆ btTripleCross()

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

Definition at line 187 of file btGjkPairDetector.cpp.

## ◆ btVec3Copy()

void btVec3Copy | ( | btVector3 * | v,
|  | const btVector3 * | w
| ) |  |
| inline

Definition at line 138 of file btGjkPairDetector.cpp.

## ◆ btVec3Cross()

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

Definition at line 180 of file btGjkPairDetector.cpp.

## ◆ btVec3Dot()

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

Definition at line 158 of file btGjkPairDetector.cpp.

## ◆ btVec3Eq()

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

Definition at line 230 of file btGjkPairDetector.cpp.

## ◆ btVec3PointSegmentDist2()

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

Definition at line 270 of file btGjkPairDetector.cpp.

## ◆ btVec3PointTriDist2()

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

Definition at line 335 of file btGjkPairDetector.cpp.

## ◆ btVec3Scale()

void btVec3Scale | ( | btVector3 * | d,
|  | btScalar | k
| ) |  |
| inline

Definition at line 173 of file btGjkPairDetector.cpp.

## ◆ btVec3Sub2()

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

Definition at line 154 of file btGjkPairDetector.cpp.

## ◆ ccdEq()

int ccdEq | ( | btScalar | _a,
|  | btScalar | _b
| ) |  |
| inline

Definition at line 195 of file btGjkPairDetector.cpp.

## ◆ ccdSign()

int ccdSign | ( | btScalar | val | ) |
| inline

Definition at line 257 of file btGjkPairDetector.cpp.

## ◆ ccdSimplexLast()

const btSupportVector* ccdSimplexLast | ( | const btSimplex * | s | ) |
| inline

Definition at line 252 of file btGjkPairDetector.cpp.

## ◆ ccdVec3Add()

void ccdVec3Add | ( | btVector3 * | v,
|  | const btVector3 * | w
| ) |  |
| inline

Definition at line 143 of file btGjkPairDetector.cpp.

## ◆ ccdVec3Dist2()

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

Definition at line 166 of file btGjkPairDetector.cpp.

## ◆ ccdVec3Sub()

void ccdVec3Sub | ( | btVector3 * | v,
|  | const btVector3 * | w
| ) |  |
| inline

Definition at line 150 of file btGjkPairDetector.cpp.

## ◆ ccdVec3X()

btScalar ccdVec3X | ( | const btVector3 * | v | ) |

Definition at line 216 of file btGjkPairDetector.cpp.

## ◆ ccdVec3Y()

btScalar ccdVec3Y | ( | const btVector3 * | v | ) |

Definition at line 221 of file btGjkPairDetector.cpp.

## ◆ ccdVec3Z()

btScalar ccdVec3Z | ( | const btVector3 * | v | ) |

Definition at line 226 of file btGjkPairDetector.cpp.

## Variable Documentation

## ◆ ccd_vec3_origin

btVector3 ccd_vec3_origin(0, 0, 0)
| static

## ◆ gGjkEpaPenetrationTolerance

btScalar gGjkEpaPenetrationTolerance = 0.001

Definition at line 36 of file btGjkPairDetector.cpp.