SuperMap.WindowsPhone.Mapping.Map.GetFullViewBounds C# (CSharp) Method

GetFullViewBounds() private method

private GetFullViewBounds ( ) : Rectangle2D
return SuperMap.WindowsPhone.Core.Rectangle2D
        private Rectangle2D GetFullViewBounds()
        {
            if (double.IsNaN(this.mapResolution))
            {
                return Rectangle2D.Empty;
            }
            Point2D point = ScreenToMap(new Point(0.0, 0.0));
            Point2D point2 = ScreenToMap(new Point(0.0, currentSize.Height));
            Point2D point3 = ScreenToMap(new Point(currentSize.Width, currentSize.Height));
            Point2D point4 = ScreenToMap(new Point(currentSize.Width, 0.0));
            if (Point2D.IsNullOrEmpty(point) || Point2D.IsNullOrEmpty(point2) || Point2D.IsNullOrEmpty(point3) || Point2D.IsNullOrEmpty(point4))
            {
                return Rectangle2D.Empty;
            }
            //TODO:直接union点
            Rectangle2D pointBounds = new Rectangle2D(point, point);
            Rectangle2D point2Bounds = new Rectangle2D(point2, point2);
            Rectangle2D point3Bounds = new Rectangle2D(point3, point3);
            Rectangle2D point4Bounds = new Rectangle2D(point4, point4);
            Rectangle2D bounds = pointBounds;
            bounds = bounds.Union(point2Bounds);
            bounds = bounds.Union(point3Bounds);
            bounds = bounds.Union(point4Bounds);
            return bounds;
        }