Graphics.FillPolygon Method

Definition

Fills the interior of a polygon defined by an array of points specified by Point structures.

Overloads

FillPolygon(Brush, ReadOnlySpan<PointF>, FillMode)
FillPolygon(Brush, ReadOnlySpan<Point>, FillMode)
FillPolygon(Brush, PointF[], FillMode)

Fills the interior of a polygon defined by an array of points specified by PointF structures using the specified fill mode.

FillPolygon(Brush, Point[], FillMode)

Fills the interior of a polygon defined by an array of points specified by Point structures using the specified fill mode.

FillPolygon(Brush, ReadOnlySpan<Point>)
FillPolygon(Brush, PointF[])

Fills the interior of a polygon defined by an array of points specified by PointF structures.

FillPolygon(Brush, Point[])

Fills the interior of a polygon defined by an array of points specified by Point structures.

FillPolygon(Brush, ReadOnlySpan<PointF>)

FillPolygon(Brush, ReadOnlySpan<PointF>, FillMode)

public:
 void FillPolygon(System::Drawing::Brush ^ brush, ReadOnlySpan<System::Drawing::PointF> points, System::Drawing::Drawing2D::FillMode fillMode);
public void FillPolygon (System.Drawing.Brush brush, ReadOnlySpan<System.Drawing.PointF> points, System.Drawing.Drawing2D.FillMode fillMode);
member this.FillPolygon : System.Drawing.Brush * ReadOnlySpan<System.Drawing.PointF> * System.Drawing.Drawing2D.FillMode -> unit
Public Sub FillPolygon (brush As Brush, points As ReadOnlySpan(Of PointF), fillMode As FillMode)

Parameters

brush
Brush
fillMode
FillMode

Applies to

FillPolygon(Brush, ReadOnlySpan<Point>, FillMode)

public:
 void FillPolygon(System::Drawing::Brush ^ brush, ReadOnlySpan<System::Drawing::Point> points, System::Drawing::Drawing2D::FillMode fillMode);
public void FillPolygon (System.Drawing.Brush brush, ReadOnlySpan<System.Drawing.Point> points, System.Drawing.Drawing2D.FillMode fillMode);
member this.FillPolygon : System.Drawing.Brush * ReadOnlySpan<System.Drawing.Point> * System.Drawing.Drawing2D.FillMode -> unit
Public Sub FillPolygon (brush As Brush, points As ReadOnlySpan(Of Point), fillMode As FillMode)

Parameters

brush
Brush
fillMode
FillMode

Applies to

FillPolygon(Brush, PointF[], FillMode)

Fills the interior of a polygon defined by an array of points specified by PointF structures using the specified fill mode.

public:
 void FillPolygon(System::Drawing::Brush ^ brush, cli::array <System::Drawing::PointF> ^ points, System::Drawing::Drawing2D::FillMode fillMode);
public void FillPolygon (System.Drawing.Brush brush, System.Drawing.PointF[] points, System.Drawing.Drawing2D.FillMode fillMode);
member this.FillPolygon : System.Drawing.Brush * System.Drawing.PointF[] * System.Drawing.Drawing2D.FillMode -> unit
Public Sub FillPolygon (brush As Brush, points As PointF(), fillMode As FillMode)

Parameters

brush
Brush

Brush that determines the characteristics of the fill.

points
PointF[]

Array of PointF structures that represent the vertices of the polygon to fill.

fillMode
FillMode

Member of the FillMode enumeration that determines the style of the fill.

Exceptions

brush is null.

-or-

points is null.

Examples

The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e, which is a parameter of the Paint event handler. The code performs the following action:

  • Creates a solid blue brush.

  • Creates an array of seven points to define a polygon.

  • Sets the fill mode to Winding.

  • Fills the polygonal area on the screen.

public:
   void FillPolygonPointFFillMode( PaintEventArgs^ e )
   {
      // Create solid brush.
      SolidBrush^ blueBrush = gcnew SolidBrush( Color::Blue );

      // Create points that define polygon.
      PointF point1 = PointF(50.0F,50.0F);
      PointF point2 = PointF(100.0F,25.0F);
      PointF point3 = PointF(200.0F,5.0F);
      PointF point4 = PointF(250.0F,50.0F);
      PointF point5 = PointF(300.0F,100.0F);
      PointF point6 = PointF(350.0F,200.0F);
      PointF point7 = PointF(250.0F,250.0F);
      array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Define fill mode.
      FillMode newFillMode = FillMode::Winding;

      // Fill polygon to screen.
      e->Graphics->FillPolygon( blueBrush, curvePoints, newFillMode );
   }
public void FillPolygonPointFFillMode(PaintEventArgs e)
{

    // Create solid brush.
    SolidBrush blueBrush = new SolidBrush(Color.Blue);

    // Create points that define polygon.
    PointF point1 = new PointF(50.0F, 50.0F);
    PointF point2 = new PointF(100.0F, 25.0F);
    PointF point3 = new PointF(200.0F, 5.0F);
    PointF point4 = new PointF(250.0F, 50.0F);
    PointF point5 = new PointF(300.0F, 100.0F);
    PointF point6 = new PointF(350.0F, 200.0F);
    PointF point7 = new PointF(250.0F, 250.0F);
    PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Define fill mode.
    FillMode newFillMode = FillMode.Winding;

    // Fill polygon to screen.
    e.Graphics.FillPolygon(blueBrush, curvePoints, newFillMode);
}
Public Sub FillPolygonPointFFillMode(ByVal e As PaintEventArgs)

    ' Create solid brush.
    Dim blueBrush As New SolidBrush(Color.Blue)

    ' Create points that define polygon.
    Dim point1 As New PointF(50.0F, 50.0F)
    Dim point2 As New PointF(100.0F, 25.0F)
    Dim point3 As New PointF(200.0F, 5.0F)
    Dim point4 As New PointF(250.0F, 50.0F)
    Dim point5 As New PointF(300.0F, 100.0F)
    Dim point6 As New PointF(350.0F, 200.0F)
    Dim point7 As New PointF(250.0F, 250.0F)
    Dim curvePoints As PointF() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Define fill mode.
    Dim newFillMode As FillMode = FillMode.Winding

    ' Fill polygon to screen.
    e.Graphics.FillPolygon(blueBrush, curvePoints, newFillMode)
End Sub

Remarks

Every two consecutive points in the array specify a side of the polygon. In addition, if the last point and the first point do not coincide, they specify the closing side of the polygon.

Applies to

FillPolygon(Brush, Point[], FillMode)

Fills the interior of a polygon defined by an array of points specified by Point structures using the specified fill mode.

public:
 void FillPolygon(System::Drawing::Brush ^ brush, cli::array <System::Drawing::Point> ^ points, System::Drawing::Drawing2D::FillMode fillMode);
public void FillPolygon (System.Drawing.Brush brush, System.Drawing.Point[] points, System.Drawing.Drawing2D.FillMode fillMode);
member this.FillPolygon : System.Drawing.Brush * System.Drawing.Point[] * System.Drawing.Drawing2D.FillMode -> unit
Public Sub FillPolygon (brush As Brush, points As Point(), fillMode As FillMode)

Parameters

brush
Brush

Brush that determines the characteristics of the fill.

points
Point[]

Array of Point structures that represent the vertices of the polygon to fill.

fillMode
FillMode

Member of the FillMode enumeration that determines the style of the fill.

Exceptions

brush is null.

-or-

points is null.

Examples

The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e, which is a parameter of the Paint event handler. The code performs the following actions:

  • Creates a solid blue brush.

  • Creates an array of seven points to define a polygon.

  • Sets the fill mode to Winding.

  • Fills the polygonal area on the screen.

public:
   void FillPolygonPointFillMode( PaintEventArgs^ e )
   {
      // Create solid brush.
      SolidBrush^ blueBrush = gcnew SolidBrush( Color::Blue );

      // Create points that define polygon.
      Point point1 = Point(50,50);
      Point point2 = Point(100,25);
      Point point3 = Point(200,5);
      Point point4 = Point(250,50);
      Point point5 = Point(300,100);
      Point point6 = Point(350,200);
      Point point7 = Point(250,250);
      array<Point>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Define fill mode.
      FillMode newFillMode = FillMode::Winding;

      // Draw polygon to screen.
      e->Graphics->FillPolygon( blueBrush, curvePoints, newFillMode );
   }
public void FillPolygonPointFillMode(PaintEventArgs e)
{

    // Create solid brush.
    SolidBrush blueBrush = new SolidBrush(Color.Blue);

    // Create points that define polygon.
    Point point1 = new Point(50, 50);
    Point point2 = new Point(100, 25);
    Point point3 = new Point(200, 5);
    Point point4 = new Point(250, 50);
    Point point5 = new Point(300, 100);
    Point point6 = new Point(350, 200);
    Point point7 = new Point(250, 250);
    Point[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Define fill mode.
    FillMode newFillMode = FillMode.Winding;

    // Draw polygon to screen.
    e.Graphics.FillPolygon(blueBrush, curvePoints, newFillMode);
}
Public Sub FillPolygonPointFillMode(ByVal e As PaintEventArgs)

    ' Create solid brush.
    Dim blueBrush As New SolidBrush(Color.Blue)

    ' Create points that define polygon.
    Dim point1 As New Point(50, 50)
    Dim point2 As New Point(100, 25)
    Dim point3 As New Point(200, 5)
    Dim point4 As New Point(250, 50)
    Dim point5 As New Point(300, 100)
    Dim point6 As New Point(350, 200)
    Dim point7 As New Point(250, 250)
    Dim curvePoints As Point() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Define fill mode.
    Dim newFillMode As FillMode = FillMode.Winding

    ' Draw polygon to screen.
    e.Graphics.FillPolygon(blueBrush, curvePoints, newFillMode)
End Sub

Remarks

Every two consecutive points in the array specify a side of the polygon. In addition, if the last point and the first point do not coincide, they specify the closing side of the polygon.

Applies to

FillPolygon(Brush, ReadOnlySpan<Point>)

public:
 void FillPolygon(System::Drawing::Brush ^ brush, ReadOnlySpan<System::Drawing::Point> points);
public void FillPolygon (System.Drawing.Brush brush, ReadOnlySpan<System.Drawing.Point> points);
member this.FillPolygon : System.Drawing.Brush * ReadOnlySpan<System.Drawing.Point> -> unit
Public Sub FillPolygon (brush As Brush, points As ReadOnlySpan(Of Point))

Parameters

brush
Brush

Applies to

FillPolygon(Brush, PointF[])

Fills the interior of a polygon defined by an array of points specified by PointF structures.

public:
 void FillPolygon(System::Drawing::Brush ^ brush, cli::array <System::Drawing::PointF> ^ points);
public:
 void FillPolygon(System::Drawing::Brush ^ brush, ... cli::array <System::Drawing::PointF> ^ points);
public void FillPolygon (System.Drawing.Brush brush, System.Drawing.PointF[] points);
public void FillPolygon (System.Drawing.Brush brush, params System.Drawing.PointF[] points);
member this.FillPolygon : System.Drawing.Brush * System.Drawing.PointF[] -> unit
Public Sub FillPolygon (brush As Brush, points As PointF())
Public Sub FillPolygon (brush As Brush, ParamArray points As PointF())

Parameters

brush
Brush

Brush that determines the characteristics of the fill.

points
PointF[]

Array of PointF structures that represent the vertices of the polygon to fill.

Exceptions

brush is null.

-or-

points is null.

Examples

The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e, which is a parameter of the Paint event handler. The code performs the following actions:

  • Creates a solid blue brush.

  • Creates an array of seven points to define a polygon.

  • Fills the polygonal area on the screen.

public:
   void FillPolygonPointF( PaintEventArgs^ e )
   {
      // Create solid brush.
      SolidBrush^ blueBrush = gcnew SolidBrush( Color::Blue );

      // Create points that define polygon.
      PointF point1 = PointF(50.0F,50.0F);
      PointF point2 = PointF(100.0F,25.0F);
      PointF point3 = PointF(200.0F,5.0F);
      PointF point4 = PointF(250.0F,50.0F);
      PointF point5 = PointF(300.0F,100.0F);
      PointF point6 = PointF(350.0F,200.0F);
      PointF point7 = PointF(250.0F,250.0F);
      array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Fill polygon to screen.
      e->Graphics->FillPolygon( blueBrush, curvePoints );
   }
public void FillPolygonPointF(PaintEventArgs e)
{

    // Create solid brush.
    SolidBrush blueBrush = new SolidBrush(Color.Blue);

    // Create points that define polygon.
    PointF point1 = new PointF(50.0F, 50.0F);
    PointF point2 = new PointF(100.0F, 25.0F);
    PointF point3 = new PointF(200.0F, 5.0F);
    PointF point4 = new PointF(250.0F, 50.0F);
    PointF point5 = new PointF(300.0F, 100.0F);
    PointF point6 = new PointF(350.0F, 200.0F);
    PointF point7 = new PointF(250.0F, 250.0F);
    PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Fill polygon to screen.
    e.Graphics.FillPolygon(blueBrush, curvePoints);
}
Public Sub FillPolygonPointF(ByVal e As PaintEventArgs)

    ' Create solid brush.
    Dim blueBrush As New SolidBrush(Color.Blue)

    ' Create points that define polygon.
    Dim point1 As New PointF(50.0F, 50.0F)
    Dim point2 As New PointF(100.0F, 25.0F)
    Dim point3 As New PointF(200.0F, 5.0F)
    Dim point4 As New PointF(250.0F, 50.0F)
    Dim point5 As New PointF(300.0F, 100.0F)
    Dim point6 As New PointF(350.0F, 200.0F)
    Dim point7 As New PointF(250.0F, 250.0F)
    Dim curvePoints As PointF() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Fill polygon to screen.
    e.Graphics.FillPolygon(blueBrush, curvePoints)
End Sub

Remarks

Every two consecutive points in the array specify a side of the polygon. In addition, if the last point and the first point do not coincide, they specify the closing side of the polygon.

Applies to

FillPolygon(Brush, Point[])

Fills the interior of a polygon defined by an array of points specified by Point structures.

public:
 void FillPolygon(System::Drawing::Brush ^ brush, cli::array <System::Drawing::Point> ^ points);
public void FillPolygon (System.Drawing.Brush brush, System.Drawing.Point[] points);
member this.FillPolygon : System.Drawing.Brush * System.Drawing.Point[] -> unit
Public Sub FillPolygon (brush As Brush, points As Point())

Parameters

brush
Brush

Brush that determines the characteristics of the fill.

points
Point[]

Array of Point structures that represent the vertices of the polygon to fill.

Exceptions

brush is null.

-or-

points is null.

Examples

The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e, which is a parameter of the Paint event handler. The code performs the following actions:

  • Creates a solid blue brush.

  • Creates an array of seven points to define a polygon.

  • Fills the polygonal area on the screen.

public:
   void FillPolygonPoint( PaintEventArgs^ e )
   {
      // Create solid brush.
      SolidBrush^ blueBrush = gcnew SolidBrush( Color::Blue );

      // Create points that define polygon.
      Point point1 = Point(50,50);
      Point point2 = Point(100,25);
      Point point3 = Point(200,5);
      Point point4 = Point(250,50);
      Point point5 = Point(300,100);
      Point point6 = Point(350,200);
      Point point7 = Point(250,250);
      array<Point>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Draw polygon to screen.
      e->Graphics->FillPolygon( blueBrush, curvePoints );
   }
public void FillPolygonPoint(PaintEventArgs e)
{

    // Create solid brush.
    SolidBrush blueBrush = new SolidBrush(Color.Blue);

    // Create points that define polygon.
    Point point1 = new Point(50, 50);
    Point point2 = new Point(100, 25);
    Point point3 = new Point(200, 5);
    Point point4 = new Point(250, 50);
    Point point5 = new Point(300, 100);
    Point point6 = new Point(350, 200);
    Point point7 = new Point(250, 250);
    Point[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Draw polygon to screen.
    e.Graphics.FillPolygon(blueBrush, curvePoints);
}
Public Sub FillPolygonPoint(ByVal e As PaintEventArgs)

    ' Create solid brush.
    Dim blueBrush As New SolidBrush(Color.Blue)

    ' Create points that define polygon.
    Dim point1 As New Point(50, 50)
    Dim point2 As New Point(100, 25)
    Dim point3 As New Point(200, 5)
    Dim point4 As New Point(250, 50)
    Dim point5 As New Point(300, 100)
    Dim point6 As New Point(350, 200)
    Dim point7 As New Point(250, 250)
    Dim curvePoints As Point() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Draw polygon to screen.
    e.Graphics.FillPolygon(blueBrush, curvePoints)
End Sub

Remarks

Every two consecutive points in the array specify a side of the polygon. In addition, if the last point and the first point do not coincide, they specify the closing side of the polygon.

Applies to

FillPolygon(Brush, ReadOnlySpan<PointF>)

public:
 void FillPolygon(System::Drawing::Brush ^ brush, ReadOnlySpan<System::Drawing::PointF> points);
public void FillPolygon (System.Drawing.Brush brush, ReadOnlySpan<System.Drawing.PointF> points);
member this.FillPolygon : System.Drawing.Brush * ReadOnlySpan<System.Drawing.PointF> -> unit
Public Sub FillPolygon (brush As Brush, points As ReadOnlySpan(Of PointF))

Parameters

brush
Brush

Applies to