如何在java中将多个多边形合并为一个

时间:2015-08-21 09:17:45

标签: java eclipse coordinates polygon openstreetmap

我想知道如何在地图上以编程方式合并多个多边形,这意味着它仍然具有相同的一般形状,但它们之间的边界被移除,它们作为一组坐标工作,就像在那张照片上一样:

http://i.imgur.com/OSmyRXh.png

我在eclipse上使用java并打开街道地图进行显示。

(所以我有几组坐标,我想让它们成为一组而不简化一般形状)。

1 个答案:

答案 0 :(得分:1)

@MartinFrank所引用的union computation会起作用,但是非常复杂,并且在这种情况下需要的更多。 显然,如果你可以合并两个多边形的 P1 P2 边界长度,你可以合并任何数字。 从提供的图像看,多边形似乎可能完全(相反) 大约)共享边界部分。如果是这种情况,那么以下 会工作的。

围绕 P1 的边界走(循环),检查当前顶点是否为 也是 P2 的顶点。一旦确定了共同的共享顶点 v , 然后很容易向前走向后围绕两个多边形,直到您确定开始 a 并停止划分共享边界范围的 b 顶点。然后删除 ab 部分,并缝合剩余的两个边界 一起形成 P1 union P2

相关问题