1

我有一组多边形,是用scipy.spatial.Voronoi(特别是 Voronoi 区域的一个子集)创建的,我想用 matplotlib 绘制它们。然而,似乎对 matplotlib 多边形的顶点顺序有一些限制,因为一些多边形最终填充在多边形的外部而不是内部。在这些情况下,颠倒指定顶点的顺序似乎可以解决问题,所以在我看来这就像一个缠绕问题(即使文档没有提到这样的事情)。

但是,由于某些多边形的顺序正确,而有些多边形的顺序错误,我不能只反转所有顶点列表,所以有没有办法可以检测到错误缠绕的列表并仅修复那些或另一种方法让 matplotlib 自动做同样的事情?

4

1 回答 1

0

ImportanceOfBeingErnest 的评论让我走上了正确的轨道,这反过来又引导我如何确定多边形点列表是否按顺时针顺序排列?. 基本上,我们在多边形 P 中找到最右下角的点、P 之前的点 A 和 P 之后的点 B。叉积 AP x PB 的符号给出绕组:CCW 绕组为正,CW 绕组为负缠绕。

于 2019-12-10T10:04:09.793 回答