假设我有很多多边形,从所有这些多边形的联合中构建多边形的最佳算法是什么?

为了我的目的,你可以把多边形的每一块想象成一个拼图,当你完成它们时,你会得到一张漂亮的图片。但问题是拼图的一小部分(比如
我天真的方法是取两个多边形,将它们合并,然后取另一个多边形,将其与两个多边形的并集合并,然后重复此过程,直到每个部分都合并为止。然后我将遍历并集多边形列表并检查是否还有一些多边形可以组合,我将重复此过程,直到获得满意的结果。

但这似乎是一种极其幼稚的做法。我只是想知道还有其他更好的算法吗?

最佳答案

这是蛮力你在做什么。执行蛮力的更好方法是分支定界法。但这仍然非常可怕。

下一步是尝试 metaheuristic 算法(禁忌搜索,模拟退火,...),或者只是重用像 Drools Planner(开源,java)这样的框架来为你实现它们。

关于c# - 从许多多边形的联合构造多边形,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4526143/

10-17 01:54