【发布时间】:2011-01-17 08:22:01
【问题描述】:
我正在寻找一种非常简单的算法来计算多边形交集/裁剪。
也就是说,给定多边形P、Q,我希望找到包含在P 和Q 中的多边形T,并且我希望T 在所有可能的多边形中是最大的。
我不介意运行时间(我有一些非常小的多边形),我也可以得到多边形交点的近似值(即,一个点数较少的多边形,但仍包含在多边形的交点)。
但对我来说,算法简单(更便宜的测试)并且最好是简短(更少的代码)对我来说非常重要。
编辑:请注意,我希望获得一个代表交叉点的多边形。对于两个多边形是否相交的问题,我只需要一个布尔答案。
【问题讨论】:
-
多边形是否凸?因为如果不是,那么它们的交点将不需要一个多边形。
-
@DNNX,如果它们是凸的,那将很容易。它们不是凸的,我有兴趣找到代表交叉点的所有多边形。
-
你看这个问题了吗?你的不太一样,因为你问的是实现的简单性。但是提到的一些库可能会满足您的需求...stackoverflow.com/questions/1526352/…