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 24 of file btMprPenetration.h.
#define BT_MPR_FABS fabs |
Definition at line 65 of file btMprPenetration.h.
#define BT_MPR_FMIN | ( | x, | |
y | |||
) | ((x) < (y) ? (x) : (y)) |
Definition at line 64 of file btMprPenetration.h.
#define BT_MPR_MAX_ITERATIONS 1000 |
Definition at line 68 of file btMprPenetration.h.
#define BT_MPR_SQRT sqrt |
Definition at line 62 of file btMprPenetration.h.
#define BT_MPR_TOLERANCE 1E-6f |
Definition at line 67 of file btMprPenetration.h.
typedef struct _btMprSimplex_t btMprSimplex_t |
Definition at line 83 of file btMprPenetration.h.
typedef struct _btMprSupport_t btMprSupport_t |
Definition at line 76 of file btMprPenetration.h.
|
inline |
Definition at line 592 of file btMprPenetration.h.
|
inline |
Definition at line 887 of file btMprPenetration.h.
|
static |
Definition at line 340 of file btMprPenetration.h.
|
inline |
Definition at line 298 of file btMprPenetration.h.
|
inline |
Definition at line 184 of file btMprPenetration.h.
|
static |
Definition at line 735 of file btMprPenetration.h.
|
static |
Definition at line 804 of file btMprPenetration.h.
|
static |
Definition at line 785 of file btMprPenetration.h.
|
static |
Definition at line 513 of file btMprPenetration.h.
|
inline |
Definition at line 147 of file btMprPenetration.h.
|
inline |
Definition at line 140 of file btMprPenetration.h.
|
inline |
Definition at line 828 of file btMprPenetration.h.
|
inline |
Definition at line 113 of file btMprPenetration.h.
|
inline |
Definition at line 85 of file btMprPenetration.h.
|
inline |
Definition at line 124 of file btMprPenetration.h.
|
inline |
Definition at line 90 of file btMprPenetration.h.
|
inline |
Definition at line 107 of file btMprPenetration.h.
|
inline |
Definition at line 130 of file btMprPenetration.h.
|
inline |
Definition at line 323 of file btMprPenetration.h.
|
inline |
Definition at line 119 of file btMprPenetration.h.
Definition at line 197 of file btMprPenetration.h.
Definition at line 202 of file btMprPenetration.h.
Definition at line 232 of file btMprPenetration.h.
Definition at line 585 of file btMprPenetration.h.
Definition at line 212 of file btMprPenetration.h.
Definition at line 166 of file btMprPenetration.h.
|
inline |
Definition at line 221 of file btMprPenetration.h.
|
inline |
Definition at line 226 of file btMprPenetration.h.
|
inline |
Definition at line 651 of file btMprPenetration.h.
|
inline |
Definition at line 207 of file btMprPenetration.h.
|
inline |
Definition at line 192 of file btMprPenetration.h.
Definition at line 239 of file btMprPenetration.h.
|
inline |
Definition at line 244 of file btMprPenetration.h.
|
static |
Definition at line 475 of file btMprPenetration.h.
|
inline |
Definition at line 289 of file btMprPenetration.h.
|
inline |
Definition at line 257 of file btMprPenetration.h.
|
inline |
Definition at line 265 of file btMprPenetration.h.