Blender
V3.3
|
#include "btBoxBoxDetector.h"
#include "BulletCollision/CollisionShapes/btBoxShape.h"
#include <float.h>
#include <string.h>
Go to the source code of this file.
Macros | |
#define | dDOTpq(a, b, p, q) ((a)[0] * (b)[0] + (a)[p] * (b)[q] + (a)[2 * (p)] * (b)[2 * (q)]) |
#define | dInfinity FLT_MAX |
#define | dMULTIPLYOP1_331(A, op, B, C) |
#define | dMULTIPLYOP0_331(A, op, B, C) |
#define | dMULTIPLY1_331(A, B, C) dMULTIPLYOP1_331(A, =, B, C) |
#define | dMULTIPLY0_331(A, B, C) dMULTIPLYOP0_331(A, =, B, C) |
#define | M__PI 3.14159265f |
#define | TST(expr1, expr2, norm, cc) |
#define | TST(expr1, expr2, n1, n2, n3, cc) |
Typedefs | |
typedef btScalar | dMatrix3[4 *3] |
Functions | |
static btScalar | dDOT (const btScalar *a, const btScalar *b) |
static btScalar | dDOT44 (const btScalar *a, const btScalar *b) |
static btScalar | dDOT41 (const btScalar *a, const btScalar *b) |
static btScalar | dDOT14 (const btScalar *a, const btScalar *b) |
void | dLineClosestApproach (const btVector3 &pa, const btVector3 &ua, const btVector3 &pb, const btVector3 &ub, btScalar *alpha, btScalar *beta) |
static int | intersectRectQuad2 (btScalar h[2], btScalar p[8], btScalar ret[16]) |
void | cullPoints2 (int n, btScalar p[], int m, int i0, int iret[]) |
int | dBoxBox2 (const btVector3 &p1, const dMatrix3 R1, const btVector3 &side1, const btVector3 &p2, const dMatrix3 R2, const btVector3 &side2, btVector3 &normal, btScalar *depth, int *return_code, int maxc, dContactGeom *, int, btDiscreteCollisionDetectorInterface::Result &output) |
#define dDOTpq | ( | a, | |
b, | |||
p, | |||
q | |||
) | ((a)[0] * (b)[0] + (a)[p] * (b)[q] + (a)[2 * (p)] * (b)[2 * (q)]) |
Definition at line 49 of file btBoxBoxDetector.cpp.
#define dInfinity FLT_MAX |
Definition at line 50 of file btBoxBoxDetector.cpp.
Definition at line 76 of file btBoxBoxDetector.cpp.
Definition at line 75 of file btBoxBoxDetector.cpp.
Definition at line 68 of file btBoxBoxDetector.cpp.
#define M__PI 3.14159265f |
Definition at line 177 of file btBoxBoxDetector.cpp.
#define TST | ( | expr1, | |
expr2, | |||
n1, | |||
n2, | |||
n3, | |||
cc | |||
) |
typedef btScalar dMatrix3[4 *3] |
Definition at line 78 of file btBoxBoxDetector.cpp.
Definition at line 188 of file btBoxBoxDetector.cpp.
References A, Freestyle::a, BT_LARGE_FLOAT, btAssert, btAtan2(), btFabs(), KDL::diff(), M__PI, and SIMD_EPSILON.
Referenced by dBoxBox2().
int dBoxBox2 | ( | const btVector3 & | p1, |
const dMatrix3 | R1, | ||
const btVector3 & | side1, | ||
const btVector3 & | p2, | ||
const dMatrix3 | R2, | ||
const btVector3 & | side2, | ||
btVector3 & | normal, | ||
btScalar * | depth, | ||
int * | return_code, | ||
int | maxc, | ||
dContactGeom * | , | ||
int | , | ||
btDiscreteCollisionDetectorInterface::Result & | output | ||
) |
Definition at line 272 of file btBoxBoxDetector.cpp.
References A, B, beta(), btFabs(), btVector3, center, cullPoints2(), dDOT(), dDOT14(), dDOT41(), dDOT44(), dInfinity, dLineClosestApproach(), dMULTIPLY0_331, dMULTIPLY1_331, i1, intersectRectQuad2(), l, normal, output, point, quad, ret, KDL::sign(), and TST.
Referenced by btBoxBoxDetector::getClosestPoints().
Definition at line 57 of file btBoxBoxDetector.cpp.
References Freestyle::a, usdtokens::b(), and dDOTpq.
Referenced by dBoxBox2(), and dLineClosestApproach().
Definition at line 60 of file btBoxBoxDetector.cpp.
References Freestyle::a, usdtokens::b(), and dDOTpq.
Referenced by dBoxBox2().
Definition at line 59 of file btBoxBoxDetector.cpp.
References Freestyle::a, usdtokens::b(), and dDOTpq.
Referenced by dBoxBox2().
Definition at line 58 of file btBoxBoxDetector.cpp.
References Freestyle::a, usdtokens::b(), and dDOTpq.
Referenced by dBoxBox2().
void dLineClosestApproach | ( | const btVector3 & | pa, |
const btVector3 & | ua, | ||
const btVector3 & | pb, | ||
const btVector3 & | ub, | ||
btScalar * | alpha, | ||
btScalar * | beta | ||
) |
Definition at line 83 of file btBoxBoxDetector.cpp.
References beta(), btVector3, dDOT(), and q1.
Referenced by dBoxBox2().
Definition at line 117 of file btBoxBoxDetector.cpp.
References buffer, r, ret, and KDL::sign().
Referenced by dBoxBox2().