Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#填充多边形(三角形)_C#_Winforms_Drawing_Draw - Fatal编程技术网

C#填充多边形(三角形)

C#填充多边形(三角形),c#,winforms,drawing,draw,C#,Winforms,Drawing,Draw,我画两个多边形有问题。 我想填充两个三角形,但一个比第二个大。 我正在winforms中使用UserControl。 代码: 问题出在哪里?试着保持逆时针顺序,从最高点开始: new Point(5, 10), new Point(10, 15), new Point(0, 15) 告诉我们这是否有帮助。有时,这些算法在边界条件下表现不佳。尝试设置PixelOffsetMode属性: e.Graphics.PixelOffsetMode = PixelOffsetMode.Half; usi

我画两个多边形有问题。 我想填充两个三角形,但一个比第二个大。 我正在winforms中使用UserControl。 代码:


问题出在哪里?

试着保持逆时针顺序,从最高点开始:

new Point(5, 10), new Point(10, 15), new Point(0, 15)

告诉我们这是否有帮助。有时,这些算法在边界条件下表现不佳。

尝试设置PixelOffsetMode属性:

e.Graphics.PixelOffsetMode = PixelOffsetMode.Half;
using (SolidBrush brush = new SolidBrush(Color.FromArgb(253, 198, 19))) {
  e.Graphics.FillPolygon(brush, DOWN);
  e.Graphics.FillPolygon(brush, UP);
}
结果:


问题仍然存在:(
e.Graphics.PixelOffsetMode = PixelOffsetMode.Half;
using (SolidBrush brush = new SolidBrush(Color.FromArgb(253, 198, 19))) {
  e.Graphics.FillPolygon(brush, DOWN);
  e.Graphics.FillPolygon(brush, UP);
}