微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 windows 窗体中实现多边形,c#,visual studio 2019

如何解决在 windows 窗体中实现多边形,c#,visual studio 2019

我想在 windows 窗体中的矩形内创建一个多边形:

这适用于矩形:(位置和尺寸是预先定义的点)

System.Drawing.Rectangle rect = new System.Drawing.Rectangle(Position,Dimension);            
Pen pen = new Pen(Color);    
pen.Width = 5;
pGraphics.DrawRectangle(pen,rect);
pGraphics.FillRectangle(new SolidBrush(ColorFilling),rect);

代码在矩形内绘制一个矩形,并带有所选颜色。

我想做同样的事情,但绘制多边形而不是使用矩形的预定义位置和尺寸,因此多边形应该在“不可见”矩形内。

问题

我如何计算他的所有分数?


编辑:我想在矩形内画一个梯形

解决方法


您可以使用矩形的位置来定义矩形中的多边形。这是指向 Microsoft C# Graphics.DrawPolygon 的内嵌链接
有关绘制多边形的更多信息。
对于您的问题,可能有无限可能,因此如果您没有想要制作的特定多边形,则很难告诉您解决方案。

       private void Draw(PaintEventArgs e)
        {
            //Position of the rectangle
            var recPosition = (100,100);

            // Draw of the rectangle
            Pen blackPen = new Pen(Color.Black,3);
            SolidBrush blueBrush = new SolidBrush(Color.Blue);
            RectangleF rect = new RectangleF(0.0F,0.0F,200.0F,200.0F);
            e.Graphics.FillRectangle(blueBrush,rect);

            // Create points that define polygon.
            PointF point1 = new PointF(0,RecPosition.Item2);
            PointF point2 = new PointF(RecPosition.Item1/2,RecPosition.Item2*2);
            PointF point3 = new PointF(RecPosition.Item1*2,RecPosition.Item2/2);
            PointF point4 = new PointF(RecPosition.Item2,0);
            PointF[] curvePoints =
                     {
                 point1,point2,point3,point4,};

            // Draw polygon curve to screen.
            e.Graphics.DrawPolygon(blackPen,curvePoints);
        }

            // Draw polygon curve to screen.
            e.Graphics.DrawPolygon(blackPen,curvePoints);
        }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。