如何按指定的数量填充多边形?

时间:2013-08-15 19:25:10

标签: graphics polygon

这个问题看似简单,但我很难让它正常运作。

我有一个由顶点列表定义的(非凸)多边形。我想创建另一个多边形,其中每个点向外移动一定量。我试过了scaling the points and then shifting back to the original origin,但那没有我想要的效果。

screenshot

我希望每个点都在原点的“外部”。但是,只有一个点列表,“外部”似乎很难计算。有一个简单的方法吗?

2 个答案:

答案 0 :(得分:0)

似乎你想要多边形的偏移,也就是多边形之外的所有点的集合,并且它与多边形的距离是给定的数字。但是,偏移不是多边形,

也许您可以根据多边形的质心缩放所有顶点。

答案 1 :(得分:0)

我认为你内的外的很难定义为全局属性。但是对于每个组件线段,有一个明确的定义 left right (至少在遍历路径的上下文中)。

所以,我认为如果你逆时针遍历你的段并在当前段的右边添加偏移段,这可能接近你想要的。或顺时针移动并向左侧添加偏移段。它可能会在凹陷处产生退化的形状。