假设我有许多多边形,什么是构建一个由所有这些多边形的联合组成的多边形(可能带有孔)的最佳算法?
为了我的目的,可以将每个多边形的每一块想象为拼图,当你完成它们时,你将得到一个漂亮的图片。但问题在于,一小部分(例如<5%)的拼图缺失,你仍然需要尽可能完整地形成一张图片;这就是我想要形成的多边形(或多边形)--也许带有孔。
我的天真的方法是取两个多边形,将它们联合起来,再取另一个多边形,用它与两个多边形的联合体联合起来,重复此过程直到每个单独的块都联合起来。然后我将遍历联合多边形列表,并检查是否仍有一些多边形可以合并,我会重复此过程,直到达到满意的结果。
但这似乎是一个极其天真的方法。我只是想知道是否还有其他更好的算法?