16 template <
int N,
typename Real>
31 template <
int N,
typename Real>
35 template <
typename Real>
38 template <
typename Real>
42 template <
int N,
typename Real>
44 DCPQuery<Real, Vector<N, Real>, Ray<N, Real>>::operator()(
50 result.rayParameter =
Dot(ray.direction, diff);
51 if (result.rayParameter > (Real)0)
53 result.rayClosest = ray.origin + result.rayParameter*ray.direction;
57 result.rayClosest = ray.origin;
60 diff = point - result.rayClosest;
61 result.sqrDistance =
Dot(diff, diff);
62 result.distance = sqrt(result.sqrDistance);
GLsizei GLsizei GLfloat distance
Vector< N, Real > rayClosest
Result operator()(Type0 const &primitive0, Type1 const &primitive1)
DualQuaternion< Real > Dot(DualQuaternion< Real > const &d0, DualQuaternion< Real > const &d1)