using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Text;
using System.Windows.Forms;
public class Form1 : Form {
protected override void OnPaint(PaintEventArgs e) {
Graphics g = e.Graphics;
g.FillRectangle(Brushes.White, this.ClientRectangle);
Region r = new Region(new Rectangle(30, 30, 30, 60));
r.Exclude(new Rectangle(40, 40, 10, 10));
g.FillRegion(Brushes.Orange, r);
Console.WriteLine("This Region: ");
Console.WriteLine(r.IsInfinite(g) ? " - is infinite" : " - is finite");
Console.WriteLine(r.IsEmpty(g) ? " - is empty" : " - is non-empty");
PointF pf = new PointF(35.0f, 30.0f);
Console.WriteLine((r.IsVisible(pf) ? " - includes" : " - excludes") + " the point (35.0, 50.0)");
Rectangle rect = new Rectangle(25, 65, 15, 15);
g.DrawRectangle(Pens.Black, rect);
Console.WriteLine((r.IsVisible(rect) ? " - is visible" : " - is invisible") + " in the rectangle shown");
r.Dispose();
}
public static void Main() {
Application.Run(new Form1());
}
}