试图用颜色填充六边形

时间:2017-06-03 20:33:17

标签: vb.net hexagonal-tiles

我正在使用DrawPolygon函数绘制一个二维网格的六边形。效果很好,但我想弄清楚如何用一定的颜色填充它们。看起来FillEllipse函数仅适用于矩形。有什么东西可以用来填充用DrawPolygon制作的形状吗?请注意,下面的代码包含一个我懒得包含的函数CreateHex,它传递2个坐标(当然是x和y),它用来计算CreateHex用来返回Hexagon所需的6个点的6个点。 。这是我的代码:

    Dim myPen As New Pen(Color.Black)
    Dim PicGraphics As Graphics = Graphics.FromImage(bmp)
    Dim DrawFont As New Font("Arial", SizeSide / 3)
    Dim drawFormat As New StringFormat
    Dim drawBrush As New SolidBrush(Color.Black)
    For lc = 1 To ColNum
        For lc2 = 1 To RowNum
            PicGraphics.DrawPolygon(myPen, CreateHex(lc, lc2))
            PicGraphics.FillEllipse(New SolidBrush(Color.Red), CreateHex(lc, lc2)) ' <---- this doesn't work.
        Next
    Next

如果我注释掉FillEllipse语句,它会正常绘制多边形。但如果它没有注释,它将完全没有任何吸引力。有人知道解决方案吗?

0 个答案:

没有答案