168 float N1[3], N2[3], d1, d2;
169 float du0, du1, du2, dv0, dv1, dv2;
171 float isect1[2], isect2[2];
172 float du0du1, du0du2, dv0dv1, dv0dv2, du1du2, dv1dv2;
192#if USE_EPSILON_TEST == TRUE
199 if (du1 == 0 && du2 == 0 && fabs(du0) < 1e-4)
201 if (du0 == 0 && du2 == 0 && fabs(du1) < 1e-4)
203 if (du0 == 0 && du1 == 0 && fabs(du2) < 1e-4)
210 if (du0du1 > 0.0f && du0du2 > 0.0f)
226#if USE_EPSILON_TEST == TRUE
233 if (dv1 == 0 && dv2 == 0 && fabs(dv0) < 1e-5)
235 if (dv0 == 0 && dv2 == 0 && fabs(dv1) < 1e-5)
237 if (dv0 == 0 && dv1 == 0 && fabs(dv2) < 1e-5)
244 if (dv0dv1 > 0.0f && dv0dv2 > 0.0f)
272 vp0, vp1, vp2, dv0, dv1, dv2, dv0dv1, dv0dv2, isect1[0], isect1[1]);
276 up0, up1, up2, du0, du1, du2, du0du1, du0du2, isect2[0], isect2[1]);
316 std::cerr <<
"contact error" << std::endl;
351 std::cerr <<
"contact error" << std::endl;
354 for (
int i = 3; i > 0; i--)
355 for (
int j = 0; j < i; j++)
359 for (
int k = 0; k < 3; k++)
#define DART_COMPUTE_INTERVALS( VV0, VV1, VV2, D0, D1, D2, D0D1, D0D2, isect0, isect1)
Definition tri_tri_intersection_test.hpp:93