intersectObject( object, recursive = true, intersects = [] ) {

		intersect( object, this, intersects, recursive );

		intersects.sort( ascSort );

		return intersects;

	}
Checks all intersection between the ray and the object with or without the
descendants. Intersections are returned sorted by distance, closest first.

`Raycaster` delegates to the `raycast()` method of the passed 3D object, when
evaluating whether the ray intersects the object or not. This allows meshes to respond
differently to ray casting than lines or points.

Note that for meshes, faces must be pointed towards the origin of the ray in order
to be detected; intersections of the ray passing through the back of a face will not
be detected. To raycast against both faces of an object, you'll want to set  {@link Material#side}
to `THREE.DoubleSide`.

@param {Object3D} object - The 3D object to check for intersection with the ray.
@param {boolean} [recursive=true] - If set to `true`, it also checks all descendants.
Otherwise it only checks intersection with the object.
@param {Array<Raycaster~Intersection>} [intersects=[]] The target array that holds the result of the method.
@return {Array<Raycaster~Intersection>} An array holding the intersection points.