/// <summary>
        /// True if it crosses the ray. Provides the intersection points.
        /// </summary>
        /// <param name="Ray">The infinite line.</param>
        /// <param name="IntersectionPts">Output. The intersection points.</param>
        public bool CrossesRay(C2DLine Ray, C2DPointSet IntersectionPts)
        {
            double dDist = Ray.point.Distance(BoundingRect.GetCentre());

            var LineTemp = new C2DLine(Ray);

            LineTemp.vector.SetLength(dDist + BoundingRect.Width() + BoundingRect.Height());

            return(Crosses(LineTemp, IntersectionPts));
        }