@Override
public void intersect(Ray3 ray, IntersectionRecorder recorder) {
ensureReady();
Interval I = boundingBox.intersect(ray).intersect(recorder.interval());
if (!I.isEmpty()) {
intersectNode(root, I.minimum(), I.maximum(), ray, recorder);
}
}
private void intersectNode(int node, double near, double far, Ray3 ray,
IntersectionRecorder recorder) {