38#ifndef HPP_FCL_INTERSECT_H
39#define HPP_FCL_INTERSECT_H
51 static bool buildTrianglePlane(
const Vec3f& v1,
const Vec3f& v2,
52 const Vec3f& v3, Vec3f* n, FCL_REAL* t);
69 ProjectResult() : sqr_distance(-1), encode(0) {}
73 static ProjectResult projectLine(
const Vec3f& a,
const Vec3f& b,
77 static ProjectResult projectTriangle(
const Vec3f& a,
const Vec3f& b,
78 const Vec3f& c,
const Vec3f& p);
81 static ProjectResult projectTetrahedra(
const Vec3f& a,
const Vec3f& b,
82 const Vec3f& c,
const Vec3f& d,
86 static ProjectResult projectLineOrigin(
const Vec3f& a,
const Vec3f& b);
89 static ProjectResult projectTriangleOrigin(
const Vec3f& a,
const Vec3f& b,
93 static ProjectResult projectTetrahedraOrigin(
const Vec3f& a,
const Vec3f& b,
94 const Vec3f& c,
const Vec3f& d);
105 static void segPoints(
const Vec3f& P,
const Vec3f& A,
const Vec3f& Q,
106 const Vec3f& B, Vec3f& VEC, Vec3f& X, Vec3f& Y);
117 static FCL_REAL sqrTriDistance(
const Vec3f S[3],
const Vec3f T[3], Vec3f& P,
120 static FCL_REAL sqrTriDistance(
const Vec3f& S1,
const Vec3f& S2,
121 const Vec3f& S3,
const Vec3f& T1,
122 const Vec3f& T2,
const Vec3f& T3, Vec3f& P,
135 static FCL_REAL sqrTriDistance(
const Vec3f S[3],
const Vec3f T[3],
136 const Matrix3f& R,
const Vec3f& Tl, Vec3f& P,
149 static FCL_REAL sqrTriDistance(
const Vec3f S[3],
const Vec3f T[3],
150 const Transform3f& tf, Vec3f& P, Vec3f& Q);
162 static FCL_REAL sqrTriDistance(
const Vec3f& S1,
const Vec3f& S2,
163 const Vec3f& S3,
const Vec3f& T1,
164 const Vec3f& T2,
const Vec3f& T3,
165 const Matrix3f& R,
const Vec3f& Tl, Vec3f& P,
178 static FCL_REAL sqrTriDistance(
const Vec3f& S1,
const Vec3f& S2,
179 const Vec3f& S3,
const Vec3f& T1,
180 const Vec3f& T2,
const Vec3f& T3,
181 const Transform3f& tf, Vec3f& P, Vec3f& Q);
#define HPP_FCL_DLLAPI
Definition: config.hh:64
double FCL_REAL
Definition: data_types.h:65
Main namespace.
Definition: broadphase_bruteforce.h:44