Поделиться через


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)

Исходный код:
Graphics.cs
Исходный код:
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)

Исходный код:
Graphics.cs
Исходный код:
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)

Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
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, определяющий стиль заливки.

Исключения

brush null.

-или-

points null.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует 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)

Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
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, определяющий стиль заливки.

Исключения

brush null.

-или-

points null.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует 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>)

Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
public:
 void FillPolygon(System::Drawing::Brush ^ brush, ReadOnlySpan<System::Drawing::Point> points);
public void FillPolygon (System.Drawing.Brush brush, scoped 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[])

Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
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 структур, представляющих вершины многоугольника для заполнения.

Исключения

brush null.

-или-

points null.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует 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[])

Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
Исходный код:
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 структур, представляющих вершины многоугольника для заполнения.

Исключения

brush null.

-или-

points null.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует 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>)

Исходный код:
Graphics.cs
Исходный код:
Graphics.cs
public:
 void FillPolygon(System::Drawing::Brush ^ brush, ReadOnlySpan<System::Drawing::PointF> points);
public void FillPolygon (System.Drawing.Brush brush, scoped 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

Применяется к