Graphics.FillPolygon 方法

定义

填充 Point 结构指定的点数组所定义的多边形的内部。

重载

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

使用指定的填充模式填充 PointF 结构指定的点数组所定义的多边形的内部。

FillPolygon(Brush, Point[], FillMode)

使用指定的填充模式填充 Point 结构指定的点数组所定义的多边形的内部。

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

填充 PointF 结构指定的点数组所定义的多边形的内部。

FillPolygon(Brush, Point[])

填充 Point 结构指定的点数组所定义的多边形的内部。

FillPolygon(Brush, ReadOnlySpan<PointF>)

FillPolygon(Brush, ReadOnlySpan<PointF>, FillMode)

Source:
Graphics.cs
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)

参数

brush
Brush
fillMode
FillMode

适用于

FillPolygon(Brush, ReadOnlySpan<Point>, FillMode)

Source:
Graphics.cs
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)

参数

brush
Brush
fillMode
FillMode

适用于

FillPolygon(Brush, PointF[], FillMode)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

使用指定的填充模式填充 PointF 结构指定的点数组所定义的多边形的内部。

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)

参数

brush
Brush

确定填充特性的 Brush

points
PointF[]

PointF 结构数组,这些结构表示要填充的多边形的顶点。

fillMode
FillMode

确定填充样式的 FillMode 枚举的成员。

例外

brushnull

pointsnull

示例

下面的代码示例旨在与 Windows 窗体 一起使用,它需要 PaintEventArgse,它是 事件处理程序的Paint一个参数。 代码执行以下操作:

  • 创建纯蓝色画笔。

  • 创建一个由七个点组成以定义多边形的数组。

  • 将填充模式设置为 Winding

  • 填充屏幕上的多边形区域。

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

注解

数组中每隔两个连续点指定多边形的一侧。 此外,如果最后一个点和第一个点不重合,则它们指定多边形的结束侧。

适用于

FillPolygon(Brush, Point[], FillMode)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

使用指定的填充模式填充 Point 结构指定的点数组所定义的多边形的内部。

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)

参数

brush
Brush

确定填充特性的 Brush

points
Point[]

Point 结构数组,这些结构表示要填充的多边形的顶点。

fillMode
FillMode

确定填充样式的 FillMode 枚举的成员。

例外

brushnull

pointsnull

示例

下面的代码示例旨在与 Windows 窗体 一起使用,它需要 PaintEventArgse,它是 事件处理程序的Paint一个参数。 此代码执行以下操作:

  • 创建纯蓝色画笔。

  • 创建一个由七个点组成以定义多边形的数组。

  • 将填充模式设置为 Winding

  • 填充屏幕上的多边形区域。

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

注解

数组中每隔两个连续点指定多边形的一侧。 此外,如果最后一个点和第一个点不重合,则它们指定多边形的结束侧。

适用于

FillPolygon(Brush, ReadOnlySpan<Point>)

Source:
Graphics.cs
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))

参数

brush
Brush

适用于

FillPolygon(Brush, PointF[])

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

填充 PointF 结构指定的点数组所定义的多边形的内部。

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())

参数

brush
Brush

确定填充特性的 Brush

points
PointF[]

PointF 结构数组,这些结构表示要填充的多边形的顶点。

例外

brushnull

pointsnull

示例

下面的代码示例旨在与 Windows 窗体 一起使用,它需要 PaintEventArgse,它是 事件处理程序的Paint一个参数。 此代码执行以下操作:

  • 创建纯蓝色画笔。

  • 创建一个由七个点组成以定义多边形的数组。

  • 填充屏幕上的多边形区域。

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

注解

数组中每隔两个连续点指定多边形的一侧。 此外,如果最后一个点和第一个点不重合,则它们指定多边形的结束侧。

适用于

FillPolygon(Brush, Point[])

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

填充 Point 结构指定的点数组所定义的多边形的内部。

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())

参数

brush
Brush

确定填充特性的 Brush

points
Point[]

Point 结构数组,这些结构表示要填充的多边形的顶点。

例外

brushnull

pointsnull

示例

下面的代码示例旨在与 Windows 窗体 一起使用,它需要 PaintEventArgse,它是 事件处理程序的Paint一个参数。 此代码执行以下操作:

  • 创建纯蓝色画笔。

  • 创建一个由七个点组成以定义多边形的数组。

  • 填充屏幕上的多边形区域。

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

注解

数组中每隔两个连续点指定多边形的一侧。 此外,如果最后一个点和第一个点不重合,则它们指定多边形的结束侧。

适用于

FillPolygon(Brush, ReadOnlySpan<PointF>)

Source:
Graphics.cs
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))

参数

brush
Brush

适用于