Bullet Collision Detection & Physics Library: btGjkEpa3.h File Reference

Bullet Collision Detection & Physics Library

Classes | Macros | Typedefs | Enumerations | Functions
btGjkEpa3.h File Reference
`#include "LinearMath/btTransform.h"`
`#include "btGjkCollisionDescription.h"`
Include dependency graph for btGjkEpa3.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
struct | btGjkEpaSolver3
struct | btGjkEpaSolver3::sResults
struct | MinkowskiDiff< btConvexTemplate >
struct | GJK< btConvexTemplate >
struct | GJK< btConvexTemplate >::sSV
struct | GJK< btConvexTemplate >::sSimplex
struct | EPA< btConvexTemplate >
struct | EPA< btConvexTemplate >::sFace
struct | EPA< btConvexTemplate >::sList
struct | EPA< btConvexTemplate >::sHorizon

## Macros
#define | GJK_MAX_ITERATIONS 128
#define | GJK_ACCURARY ((btScalar)0.0001)
#define | GJK_MIN_DISTANCE ((btScalar)0.0001)
#define | GJK_DUPLICATED_EPS ((btScalar)0.0001)
#define | GJK_SIMPLEX2_EPS ((btScalar)0.0)
#define | GJK_SIMPLEX3_EPS ((btScalar)0.0)
#define | GJK_SIMPLEX4_EPS ((btScalar)0.0)
#define | EPA_MAX_VERTICES 64
#define | EPA_MAX_FACES (EPA_MAX_VERTICES*2)
#define | EPA_MAX_ITERATIONS 255
#define | EPA_ACCURACY ((btScalar)0.0001)
#define | EPA_FALLBACK (10*EPA_ACCURACY)
#define | EPA_PLANE_EPS ((btScalar)0.00001)
#define | EPA_INSIDE_EPS ((btScalar)0.01)

## Typedefs
typedef unsigned int | U
typedef unsigned char | U1

## Enumerations
enum | eGjkStatus { eGjkValid, eGjkInside, eGjkFailed }
enum | eEpaStatus { eEpaValid, eEpaTouching, eEpaDegenerated, eEpaNonConvex, eEpaInvalidHull, eEpaOutOfFaces, eEpaOutOfVertices, eEpaAccuraryReached, eEpaFallBack, eEpaFailed }

## Functions
template<typename btConvexTemplate >
static void | Initialize (const btConvexTemplate &a, const btConvexTemplate &b, btGjkEpaSolver3::sResults &results, MinkowskiDiff< btConvexTemplate > &shape)
template<typename btConvexTemplate >
bool | btGjkEpaSolver3_Distance (const btConvexTemplate &a, const btConvexTemplate &b, const btVector3 &guess, btGjkEpaSolver3::sResults &results)
template<typename btConvexTemplate >
bool | btGjkEpaSolver3_Penetration (const btConvexTemplate &a, const btConvexTemplate &b, const btVector3 &guess, btGjkEpaSolver3::sResults &results)
template<typename btConvexTemplate , typename btDistanceInfoTemplate >
int | btComputeGjkDistance (const btConvexTemplate &a, const btConvexTemplate &b, const btGjkCollisionDescription &colDesc, btDistanceInfoTemplate *distInfo)

## Macro Definition Documentation

## § EPA_ACCURACY

#define EPA_ACCURACY ((btScalar)0.0001)

Definition at line 80 of file btGjkEpa3.h.

## § EPA_FALLBACK

#define EPA_FALLBACK (10*EPA_ACCURACY)

Definition at line 81 of file btGjkEpa3.h.

## § EPA_INSIDE_EPS

#define EPA_INSIDE_EPS ((btScalar)0.01)

Definition at line 83 of file btGjkEpa3.h.

## § EPA_MAX_FACES

#define EPA_MAX_FACES (EPA_MAX_VERTICES*2)

Definition at line 78 of file btGjkEpa3.h.

## § EPA_MAX_ITERATIONS

#define EPA_MAX_ITERATIONS 255

Definition at line 79 of file btGjkEpa3.h.

## § EPA_MAX_VERTICES

#define EPA_MAX_VERTICES 64

Definition at line 77 of file btGjkEpa3.h.

## § EPA_PLANE_EPS

#define EPA_PLANE_EPS ((btScalar)0.00001)

Definition at line 82 of file btGjkEpa3.h.

## § GJK_ACCURARY

#define GJK_ACCURARY ((btScalar)0.0001)

Definition at line 69 of file btGjkEpa3.h.

## § GJK_DUPLICATED_EPS

#define GJK_DUPLICATED_EPS ((btScalar)0.0001)

Definition at line 71 of file btGjkEpa3.h.

## § GJK_MAX_ITERATIONS

#define GJK_MAX_ITERATIONS 128

Definition at line 68 of file btGjkEpa3.h.

## § GJK_MIN_DISTANCE

#define GJK_MIN_DISTANCE ((btScalar)0.0001)

Definition at line 70 of file btGjkEpa3.h.

## § GJK_SIMPLEX2_EPS

#define GJK_SIMPLEX2_EPS ((btScalar)0.0)

Definition at line 72 of file btGjkEpa3.h.

## § GJK_SIMPLEX3_EPS

#define GJK_SIMPLEX3_EPS ((btScalar)0.0)

Definition at line 73 of file btGjkEpa3.h.

## § GJK_SIMPLEX4_EPS

#define GJK_SIMPLEX4_EPS ((btScalar)0.0)

Definition at line 74 of file btGjkEpa3.h.

## Typedef Documentation

## § U

typedef unsigned int U

Definition at line 87 of file btGjkEpa3.h.

## § U1

typedef unsigned char U1

Definition at line 88 of file btGjkEpa3.h.

## Enumeration Type Documentation

## § eEpaStatus

enum eEpaStatus

Enumerator
eEpaValid |
eEpaTouching |
eEpaDegenerated |
eEpaNonConvex |
eEpaInvalidHull |
eEpaOutOfFaces |
eEpaOutOfVertices |
eEpaAccuraryReached |
eEpaFallBack |
eEpaFailed |

Definition at line 509 of file btGjkEpa3.h.

## § eGjkStatus

enum eGjkStatus

Enumerator
eGjkValid |
eGjkInside |
eGjkFailed |

Definition at line 136 of file btGjkEpa3.h.

## Function Documentation

## § btComputeGjkDistance()

template<typename btConvexTemplate , typename btDistanceInfoTemplate >

int btComputeGjkDistance | ( | const btConvexTemplate & | a,
|  | const btConvexTemplate & | b,
|  | const btGjkCollisionDescription & | colDesc,
|  | btDistanceInfoTemplate * | distInfo
| ) |  |

Definition at line 993 of file btGjkEpa3.h.

## § btGjkEpaSolver3_Distance()

template<typename btConvexTemplate >

bool btGjkEpaSolver3_Distance | ( | const btConvexTemplate & | a,
|  | const btConvexTemplate & | b,
|  | const btVector3 & | guess,
|  | btGjkEpaSolver3::sResults & | results
| ) |  |

Definition at line 866 of file btGjkEpa3.h.

## § btGjkEpaSolver3_Penetration()

template<typename btConvexTemplate >

bool btGjkEpaSolver3_Penetration | ( | const btConvexTemplate & | a,
|  | const btConvexTemplate & | b,
|  | const btVector3 & | guess,
|  | btGjkEpaSolver3::sResults & | results
| ) |  |

Definition at line 902 of file btGjkEpa3.h.

## § Initialize()

template<typename btConvexTemplate >

static void Initialize | ( | const btConvexTemplate & | a,
|  | const btConvexTemplate & | b,
|  | btGjkEpaSolver3::sResults & | results,
|  | MinkowskiDiff< btConvexTemplate > & | shape
| ) |  |
| static

Definition at line 842 of file btGjkEpa3.h.