Region::Exclude Method (GraphicsPath^)

 

Updates this Region to contain only the portion of its interior that does not intersect with the specified GraphicsPath.

Namespace:   System.Drawing
Assembly:  System.Drawing (in System.Drawing.dll)

public:
void Exclude(
	GraphicsPath^ path
)

Parameters

path
Type: System.Drawing.Drawing2D::GraphicsPath^

The GraphicsPath to exclude from this Region.

Exception Condition
ArgumentNullException

path is null.

The following code example demonstrates the Region constructor and the Exclude and Dispose methods.

This example is designed to be used with Windows Forms. Paste the code into a form and call the FillRegionExcludingPath method when handling the form's Paint event, passing e as PaintEventArgs.

private:
   void FillRegionExcludingPath( PaintEventArgs^ e )
   {
      // Create the region using a rectangle.
      System::Drawing::Region^ myRegion = gcnew System::Drawing::Region( Rectangle(20,20,100,100) );

      // Create the GraphicsPath.
      System::Drawing::Drawing2D::GraphicsPath^ path = gcnew System::Drawing::Drawing2D::GraphicsPath;

      // Add a circle to the graphics path.
      path->AddEllipse( 50, 50, 25, 25 );

      // Exclude the circle from the region.
      myRegion->Exclude( path );

      // Retrieve a Graphics object from the form.
      Graphics^ formGraphics = e->Graphics;

      // Fill the region in blue.
      formGraphics->FillRegion( Brushes::Blue, myRegion );

      // Dispose of the path and region objects.
      delete path;
      delete myRegion;
   }

.NET Framework
Available since 1.1
Return to top
Show: