public IntersectionRecord intersectsWhere(final ReadOnlyRay3 ray) {
final ReadOnlyVector3 rayDir = ray.getDirection();
final ReadOnlyVector3 rayOrigin = ray.getOrigin();
// convert ray to box coordinates
final Vector3 diff = rayOrigin.subtract(getCenter(), _compVect1);
diff.set(_xAxis.dot(diff), _yAxis.dot(diff), _zAxis.dot(diff));
final Vector3 direction = _compVect2.set(_xAxis.dot(rayDir), _yAxis.dot(rayDir), _zAxis.dot(rayDir));
final double[] t = { 0, Double.POSITIVE_INFINITY };