Graphics与区域
GraphicsPath本身是一个由有顺序的一组图形组成的路径,因为这组图形是有顺序的,而且每个图形都由一组有顺序的直线和曲线组成,所以GraphicsPath本身是一个有起点和终点的路径。
在一个区域中创建另一个区域:
要从以后的区域中创建另一个区域,构造函数不接受已有的区域对象本身,而是接受一个区域数据的数组,我们可以从其GetRegionData方法中获取这个区域所需要的数据,这个方法一RegionData对象的形式返回所需的数据,接着就可以吧这个对象传送给Region构造函数,创建与已有Region对象类似的新Region对象。
Region r1 = new Region(new rectangle(10,10,80,20));
RegionData r1Data = r1.GetRegionData();
Region r2 = new Region(r1Data);
另外,还可以使用Clone方法:Region r1 = new Region(new Rectangle(10,10,80,20));
Region r2 = r1.Clone();
Region中的代数操作:
使用 :Rectangle rect1 = new Rectangle(50, 10, 50, 100); Rectangle rect2 = new Rectangle(10,50,130,50); Region reg = new Region(rect1); reg.Intersect(rect2); g.FillRegion(Brushes.Orange, reg); g.DrawRectangle(Pens.Black, rect1); g.DrawRectangle(Pens.Black, rect2);