47 triSurfaceSearch::triSurfaceSearch(
const triSurface& surface)
65 treeBb.
min() -=
point(ROOTVSMALL, ROOTVSMALL, ROOTVSMALL);
66 treeBb.max() +=
point(ROOTVSMALL, ROOTVSMALL, ROOTVSMALL);
91 const point& sample = samples[sampleI];
93 if (!
tree().bb().contains(sample))
95 inside[sampleI] =
false;
99 tree().getVolumeType(sample)
103 inside[sampleI] =
true;
107 inside[sampleI] =
false;
122 const scalar nearestDistSqr = 0.25*
magSqr(span);
128 hitInfo = tree().findNearest(samples[sampleI], nearestDistSqr);
132 nearest[sampleI] = hitInfo.
index();
136 nearest[sampleI] = -1;
151 const scalar nearestDistSqr = 0.25*
magSqr(span);
160 hitInfo = tree().findNearest(samples[sampleI], nearestDistSqr);
164 nearest[sampleI] = hitInfo.
hitPoint();
168 nearest[sampleI] = greatPoint;
179 const scalar nearestDistSqr = 0.25*
magSqr(span);
181 return tree().findNearest(pt, nearestDistSqr);