将许多小多边形组合成一个(一些)大多边形

Combining lots of small polygons to one (some) big poly(s)

我正在寻找将大量相对较小的二维多边形合并为一个或一些大多边形的算法。如果两个小多边形接触或重叠,则应将它们合并为一个多边形。

我的大目标是充分减少描述对撞机所需的 points/lines 量。生成的对撞机可以包括一些多边形,顺便说一句。

你能提出一个算法或库来做到这一点吗? (最后我会在 C# 中为 Unity3d 实现解决方案)。

我希望以编程方式创建我的大型对撞机,并且我希望它的边界能够准确地重复小多边形的外边界。这就是为什么这个问题不是 "How to add physics to an object in Unity 5".

的重复问题

要构建二维多边形的并集,您可以使用 Clipper library

The download package contains the library's full source code (written in Delphi, C++ and C#),`