This documentation is archived and is not being maintained.

Graphics.FillPolygon Method (Brush, Point[])

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

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

public void FillPolygon(
	Brush brush,
	Point[] points


Type: System.Drawing.Brush
Brush that determines the characteristics of the fill.
Type: System.Drawing.Point[]
Array of Point structures that represent the vertices of the polygon to fill.


brush is null.


points is null.

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.

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 = 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);

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.