Пример #1
0
        /// <summary>
        ///	Intersect Shared Method
        /// </summary>
        ///
        /// <remarks>
        ///	Produces a new RectangleF by intersecting 2 existing
        ///	RectangleFs. Returns null if there is no intersection.
        /// </remarks>

        public static RectangleF Intersect(RectangleF a,
                                           RectangleF b)
        {
            // MS.NET returns a non-empty rectangle if the two rectangles
            // touch each other
            if (!a.IntersectsWithInclusive(b))
            {
                return(Empty);
            }

            return(FromLTRB(
                       Math.Max(a.Left, b.Left),
                       Math.Max(a.Top, b.Top),
                       Math.Min(a.Right, b.Right),
                       Math.Min(a.Bottom, b.Bottom)));
        }
        /// <summary>
        ///	Intersect Shared Method
        /// </summary>
        ///
        /// <remarks>
        ///	Produces a new RectangleF by intersecting 2 existing 
        ///	RectangleFs. Returns null if there is no intersection.
        /// </remarks>
        public static RectangleF Intersect(RectangleF a,
            RectangleF b)
        {
            // MS.NET returns a non-empty rectangle if the two rectangles
            // touch each other
            if (!a.IntersectsWithInclusive(b))
                return Empty;

            return FromLTRB(
                Math.Max(a.Left, b.Left),
                Math.Max(a.Top, b.Top),
                Math.Min(a.Right, b.Right),
                Math.Min(a.Bottom, b.Bottom));
        }