编辑
2025-02-03
C# 应用
00
请注意,本文编写于 105 天前,最后修改于 105 天前,其中某些信息可能已经过时。

目录

摘要
正文

摘要

在C#中,使用GDI+(Graphics Device Interface Plus)可以绘制各种图形,包括多边形。DrawPolygon方法是用来绘制多边形的。这个方法需要一个Pen对象来定义多边形的边界样式(颜色、宽度等),以及一个点数组Point[]来定义多边形的各个顶点。

正文

DrawPolygon(Pen, PointF[])绘制由一组 PointF 结构定义的多边形。
DrawPolygon(Pen, Point[])绘制由一组 Point 结构定义的多边形。

画一个五角星

C#
protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); //申明一个黑色的画笔 Pen pen = new Pen(Color.Black, 3); e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; //为多边形顶点创建一个Point数组 Point[] ps ={ new Point(0,76), new Point(80,76), new Point(106,0), new Point(130,76), new Point(210,76), new Point(146,124), new Point(170,200), new Point(106,152), new Point(40,200), new Point(66,124), }; e.Graphics.DrawPolygon(pen, ps); }

image.png

画一个正方形

C#
protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); Pen pen = new Pen(Color.Black, 3); e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; Point[] ps ={ new Point(10,10), new Point(10,100), new Point(100,100), new Point(100,10), }; //连接多边形 e.Graphics.DrawPolygon(pen, ps); //填充颜色 e.Graphics.FillPolygon(new SolidBrush(Color.Red), ps); }

image.png

调整Point顺序结果会不同

image.png

C#
protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); Pen pen = new Pen(Color.Black, 3); e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; Point[] ps ={ new Point(10,10), new Point(100,100), new Point(10,100), new Point(100,10), }; e.Graphics.DrawPolygon(pen, ps); e.Graphics.FillPolygon(new SolidBrush(Color.Red), ps); }

本文作者:rick

本文链接:https://www.idiosoft.com/post/105

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

评论
  • 按正序
  • 按倒序
  • 按热度
来发评论吧~
Powered by Waline v2.14.8