/**
* Checks if this shape is intersected by a given ray. If so, returns the
* distance from the start of the ray to the shape and information about the
* intersection via the 2nd parameter. A negative value is returned if
* there is no intersection.
*/
/**
* Checks if this shape is intersected by a given ray. If so, returns the
* distance from the start of the ray to the shape and information about the
* intersection via the 2nd parameter. A negative value is returned if
* there is no intersection.
*/