Bullet Collision Detection & Physics Library
|
Go to the source code of this file.
Classes | |
struct | btMprCollisionDescription |
struct | btMprDistanceInfo |
struct | _btMprSupport_t |
struct | _btMprSimplex_t |
Macros | |
#define | BT_DEBUG_MPR1 |
2014 Oct, Erwin Coumans, Use templates to avoid void* casts More... | |
#define | BT_MPR_SQRT sqrt |
#define | BT_MPR_FMIN(x, y) ((x) < (y) ? (x) : (y)) |
#define | BT_MPR_FABS fabs |
#define | BT_MPR_TOLERANCE 1E-6f |
#define | BT_MPR_MAX_ITERATIONS 1000 |
Typedefs | |
typedef struct _btMprSupport_t | btMprSupport_t |
typedef struct _btMprSimplex_t | btMprSimplex_t |
Functions | |
btMprSupport_t * | btMprSimplexPointW (btMprSimplex_t *s, int idx) |
void | btMprSimplexSetSize (btMprSimplex_t *s, int size) |
int | btMprSimplexSize (const btMprSimplex_t *s) |
const btMprSupport_t * | btMprSimplexPoint (const btMprSimplex_t *s, int idx) |
void | btMprSupportCopy (btMprSupport_t *d, const btMprSupport_t *s) |
void | btMprSimplexSet (btMprSimplex_t *s, size_t pos, const btMprSupport_t *a) |
void | btMprSimplexSwap (btMprSimplex_t *s, size_t pos1, size_t pos2) |
int | btMprIsZero (float val) |
int | btMprEq (float _a, float _b) |
int | btMprVec3Eq (const btVector3 *a, const btVector3 *b) |
template<typename btConvexTemplate > | |
void | btFindOrigin (const btConvexTemplate &a, const btConvexTemplate &b, const btMprCollisionDescription &colDesc, btMprSupport_t *center) |
void | btMprVec3Set (btVector3 *v, float x, float y, float z) |
void | btMprVec3Add (btVector3 *v, const btVector3 *w) |
void | btMprVec3Copy (btVector3 *v, const btVector3 *w) |
void | btMprVec3Scale (btVector3 *d, float k) |
float | btMprVec3Dot (const btVector3 *a, const btVector3 *b) |
float | btMprVec3Len2 (const btVector3 *v) |
void | btMprVec3Normalize (btVector3 *d) |
void | btMprVec3Cross (btVector3 *d, const btVector3 *a, const btVector3 *b) |
void | btMprVec3Sub2 (btVector3 *d, const btVector3 *v, const btVector3 *w) |
void | btPortalDir (const btMprSimplex_t *portal, btVector3 *dir) |
int | portalEncapsulesOrigin (const btMprSimplex_t *portal, const btVector3 *dir) |
int | portalReachTolerance (const btMprSimplex_t *portal, const btMprSupport_t *v4, const btVector3 *dir) |
int | portalCanEncapsuleOrigin (const btMprSimplex_t *portal, const btMprSupport_t *v4, const btVector3 *dir) |
void | btExpandPortal (btMprSimplex_t *portal, const btMprSupport_t *v4) |
template<typename btConvexTemplate > | |
void | btMprSupport (const btConvexTemplate &a, const btConvexTemplate &b, const btMprCollisionDescription &colDesc, const btVector3 &dir, btMprSupport_t *supp) |
template<typename btConvexTemplate > | |
static int | btDiscoverPortal (const btConvexTemplate &a, const btConvexTemplate &b, const btMprCollisionDescription &colDesc, btMprSimplex_t *portal) |
template<typename btConvexTemplate > | |
static int | btRefinePortal (const btConvexTemplate &a, const btConvexTemplate &b, const btMprCollisionDescription &colDesc, btMprSimplex_t *portal) |
static void | btFindPos (const btMprSimplex_t *portal, btVector3 *pos) |
float | btMprVec3Dist2 (const btVector3 *a, const btVector3 *b) |
float | _btMprVec3PointSegmentDist2 (const btVector3 *P, const btVector3 *x0, const btVector3 *b, btVector3 *witness) |
float | btMprVec3PointTriDist2 (const btVector3 *P, const btVector3 *x0, const btVector3 *B, const btVector3 *C, btVector3 *witness) |
template<typename btConvexTemplate > | |
static void | btFindPenetr (const btConvexTemplate &a, const btConvexTemplate &b, const btMprCollisionDescription &colDesc, btMprSimplex_t *portal, float *depth, btVector3 *pdir, btVector3 *pos) |
static void | btFindPenetrTouch (btMprSimplex_t *portal, float *depth, btVector3 *dir, btVector3 *pos) |
static void | btFindPenetrSegment (btMprSimplex_t *portal, float *depth, btVector3 *dir, btVector3 *pos) |
template<typename btConvexTemplate > | |
int | btMprPenetration (const btConvexTemplate &a, const btConvexTemplate &b, const btMprCollisionDescription &colDesc, float *depthOut, btVector3 *dirOut, btVector3 *posOut) |
template<typename btConvexTemplate , typename btMprDistanceTemplate > | |
int | btComputeMprPenetration (const btConvexTemplate &a, const btConvexTemplate &b, const btMprCollisionDescription &colDesc, btMprDistanceTemplate *distInfo) |
#define BT_DEBUG_MPR1 |
2014 Oct, Erwin Coumans, Use templates to avoid void* casts
Definition at line 23 of file btMprPenetration.h.
#define BT_MPR_FABS fabs |
Definition at line 63 of file btMprPenetration.h.
#define BT_MPR_FMIN | ( | x, | |
y | |||
) | ((x) < (y) ? (x) : (y)) |
Definition at line 62 of file btMprPenetration.h.
#define BT_MPR_MAX_ITERATIONS 1000 |
Definition at line 66 of file btMprPenetration.h.
#define BT_MPR_SQRT sqrt |
Definition at line 60 of file btMprPenetration.h.
#define BT_MPR_TOLERANCE 1E-6f |
Definition at line 65 of file btMprPenetration.h.
typedef struct _btMprSimplex_t btMprSimplex_t |
Definition at line 81 of file btMprPenetration.h.
typedef struct _btMprSupport_t btMprSupport_t |
Definition at line 74 of file btMprPenetration.h.
|
inline |
Definition at line 576 of file btMprPenetration.h.
|
inline |
Definition at line 865 of file btMprPenetration.h.
|
static |
Definition at line 323 of file btMprPenetration.h.
|
inline |
Definition at line 273 of file btMprPenetration.h.
|
inline |
Definition at line 164 of file btMprPenetration.h.
|
static |
Definition at line 729 of file btMprPenetration.h.
|
static |
Definition at line 792 of file btMprPenetration.h.
|
static |
Definition at line 774 of file btMprPenetration.h.
|
static |
Definition at line 496 of file btMprPenetration.h.
|
inline |
Definition at line 137 of file btMprPenetration.h.
|
inline |
Definition at line 132 of file btMprPenetration.h.
|
inline |
Definition at line 812 of file btMprPenetration.h.
|
inline |
Definition at line 107 of file btMprPenetration.h.
|
inline |
Definition at line 83 of file btMprPenetration.h.
|
inline |
Definition at line 118 of file btMprPenetration.h.
|
inline |
Definition at line 88 of file btMprPenetration.h.
|
inline |
Definition at line 102 of file btMprPenetration.h.
|
inline |
Definition at line 123 of file btMprPenetration.h.
|
inline |
Definition at line 307 of file btMprPenetration.h.
|
inline |
Definition at line 113 of file btMprPenetration.h.
Definition at line 176 of file btMprPenetration.h.
Definition at line 181 of file btMprPenetration.h.
Definition at line 210 of file btMprPenetration.h.
Definition at line 569 of file btMprPenetration.h.
Definition at line 191 of file btMprPenetration.h.
Definition at line 158 of file btMprPenetration.h.
|
inline |
Definition at line 199 of file btMprPenetration.h.
|
inline |
Definition at line 204 of file btMprPenetration.h.
|
inline |
Definition at line 641 of file btMprPenetration.h.
|
inline |
Definition at line 186 of file btMprPenetration.h.
|
inline |
Definition at line 171 of file btMprPenetration.h.
Definition at line 215 of file btMprPenetration.h.
|
inline |
Definition at line 220 of file btMprPenetration.h.
|
static |
Definition at line 460 of file btMprPenetration.h.
|
inline |
Definition at line 264 of file btMprPenetration.h.
|
inline |
Definition at line 232 of file btMprPenetration.h.
|
inline |
Definition at line 240 of file btMprPenetration.h.