16 template <
int N,
typename Rational>
32 template <
int N,
typename Rational>
40 Rational a00 =
Dot(edge0, edge0);
41 Rational a01 =
Dot(edge0, edge1);
42 Rational a11 =
Dot(edge1, edge1);
43 Rational b0 = -
Dot(diff, edge0);
44 Rational b1 = -
Dot(diff, edge1);
45 Rational
const zero = (Rational)0;
46 Rational
const one = (Rational)1;
47 Rational det = a00 * a11 - a01 * a01;
48 Rational
t0 = a01 * b1 - a11 * b0;
49 Rational
t1 = a01 * b0 - a00 * b1;
121 Rational invDet = one / det;
128 Rational tmp0, tmp1, numer, denom;
137 denom = a00 - ((Rational)2)*a01 + a11;
173 denom = a00 - ((Rational)2)*a01 + a11;
204 numer = a11 + b1 - a01 - b0;
212 denom = a00 - ((Rational)2)*a01 + a11;
231 result.
closest = triangle.
v[0] + t0 * edge0 + t1 * edge1;
Vector< N, Rational > closest
GLuint GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat t0
GLuint GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat t1
Result operator()(Vector< N, Rational > const &point, Triangle< N, Rational > const &triangle)
DualQuaternion< Real > Dot(DualQuaternion< Real > const &d0, DualQuaternion< Real > const &d1)
std::array< Vector< N, Real >, 3 > v