/// <summary> 将此 DUIRegion 更新为其自身与指定的 System.Drawing.Rectangle 结构的交集。 /// </summary> /// <param name="rect">要与此 DUIRegion 相交的 System.Drawing.Rectangle 结构。</param> public void Intersect(Rectangle rect) { this.region.Intersect(rect); this.actions.Add((dxGeometry, geometrySink) => { SharpDX.Direct2D1.RectangleGeometry rectangleGeometry = new SharpDX.Direct2D1.RectangleGeometry(RenderTarget.RenderTarget.Factory, DxConvert.ToRectF(rect)); this.rectangleGeometry.Combine(rectangleGeometry, SharpDX.Direct2D1.CombineMode.Intersect, geometrySink); }); }
/// <summary> 基于指定的 System.Drawing.RectangleF 结构初始化一个新的 DUIRegion。 /// </summary> /// <param name="rect">一个 System.Drawing.RectangleF 结构,用于定义新 DUIRegion 的内部</param> public DUIRegion(RectangleF rect) { this.region = new Region(rect); this.actions.Add((dxGeometry, geometrySink) => { SharpDX.Direct2D1.RectangleGeometry rectangleGeometry = new SharpDX.Direct2D1.RectangleGeometry(RenderTarget.RenderTarget.Factory, DxConvert.ToRectF(rect)); this.rectangleGeometry.Combine(rectangleGeometry, SharpDX.Direct2D1.CombineMode.Union, geometrySink); }); }