当前位置: 首页 > 编程语言 > C#

画一个有多个孔的多边形?分享

时间:2023-04-11 02:34:24 C#

画多边形有多个孔?我正在尝试绘制一个带有多个孔的多边形。我尝试了以下代码,但它不起作用。请指教。PointF[]mypoly=newPointF[6+5+5];mypoly[0]=newPointF(0,0);mypoly[1]=newPointF(100,0);mypoly[2]=newPointF(100,100);mypoly[3]=newPointF(0,100);mypoly[4]=newPointF(10,80);mypoly[5]=newPointF(0,0);mypoly[6]=newPointF(10,10);mypoly[7]=newPointF(10,20);mypoly[8]=newPointF(20,20);mypoly[9]=newPointF(20,10);mypoly[10]=newPointF(10,10);mypoly[11]=newPointF(40,10);mypoly[12]=newPointF(40,20);mypoly[13]=newPointF(60,20);]=新的PointF(60,10);mypoly[15]=newPointF(40,10);g.FillPolygon(newSolidBrush(Color.Red),mypoly,FillMode.Winding);第一部分是外部多边形。第二和第三部分是多边形内部的两个孔。请改用GraphicsPath。你可以使用Graphics.FillPath来绘制它,像这样:以上是C#学习教程:画一个多边形有多个孔?如果分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注——usingSystem.Drawing.Drawing2D;...使用(vargp=newGraphicsPath()){PointF[]outer=newPointF[]{newPointF(0,0),newPointF(100,0),newPointF(100,100),newPointF(0,100),新点F(10,80),新点F(0,0)};gp.AddPolygon(外部);PointF[]inner1=newPointF[]{newPointF(10,10),newPointF(10,20),newPointF(20,20),newPointF(20,10),newPointF(10,10)};gp.AddPolygon(inner1);PointF[]inner2=newPointF[]{newPointF(40,10),newPointF(40,20),newPointF(60,20),newPointF(60,10),newPointF(40,10)};gp.AddPolygon(inner2);e.Graphics.FillPath(Brushes.Black,gp);}本文收集自网络,不代表任何内容,如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处: