Graphics.IntersectClip Method (Region)
Updates the clip region of this Graphics to the intersection of the current clip region and the specified Region.
Assembly: System.Drawing (in System.Drawing.dll)
The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. The code performs the following actions:
Creates a rectangle with upper-left corner at (0, 0).
Creates a region and sets it to the rectangle, and sets the clipping region to this region.
Creates a second rectangle with upper-left corner at (100, 100).
Creates a region and sets it to the second rectangle, and sets the clipping region to the intersection of this region and the current clipping region (the first rectangle) using a combine mode of Replace.
Fills a large rectangle that includes both previous regions with a solid blue brush.
Resets the clipping region to infinite.
Draws rectangles around the two clipping regions. It uses a black pen for the first clipping region and a red pen for the second clipping region.
The result is that only the intersection of the two regions is filled with blue.
Private Sub IntersectClipRegion(ByVal e As PaintEventArgs) ' Set clipping region. Dim clipRect As New Rectangle(0, 0, 200, 200) Dim clipRegion As New [Region](clipRect) e.Graphics.SetClip(clipRegion, CombineMode.Replace) ' Update clipping region to intersection of ' existing region with specified rectangle. Dim intersectRect As New Rectangle(100, 100, 200, 200) Dim intersectRegion As New [Region](intersectRect) e.Graphics.IntersectClip(intersectRegion) ' Fill rectangle to demonstrate effective clipping region. e.Graphics.FillRectangle(New SolidBrush(Color.Blue), 0, 0, _ 500, 500) ' Reset clipping region to infinite. e.Graphics.ResetClip() ' Draw clipRect and intersectRect to screen. e.Graphics.DrawRectangle(New Pen(Color.Black), clipRect) e.Graphics.DrawRectangle(New Pen(Color.Red), intersectRect) End Sub
Available since 1.1