填充多边形边缘的间隙

时间:2016-03-20 19:19:49

标签: math language-agnostic draw polygon

我使用pygame绘制多边形但是当线条太粗时,多边形的边缘会有间隙。我希望填补这些空白。我找到的解决方案是绘制一个填充多边形,在所有间隙中有4个点,如下图所示。但我不知道如何找到多边形的4个点,这就是我的问题。此外,如果你能找到一个更好的解决方案。

What I need

注意:多边形不是常规的,它只是由许多点组成。如果您的解决方案不在python中,它也没问题。

2 个答案:

答案 0 :(得分:1)

如果您的多边形没有锐角(方向变化超过90°), 在每个角点,将两条线延伸(lineWidth/2)*tan(angle)。角度是方向变化的量,而不是段之间的内角。

如果你确实有锐角,它会变得更复杂。线段不能再绘制为矩形,您只能扩展多边形的“外部”边缘。这个公式是一样的。

答案 1 :(得分:0)

您可以延长线条以填补空白。虽然picture  不好,可能足以想象这个想法。