0

在我们的项目中,我们使用的是 asp.net mvc 4.5,所以它对于 os all 来说是相当新的。我得到了一张不同多边形的地图。如果一个多边形与另一个多边形重叠,那么我必须调整第一个多边形,所以没有人重叠我可以使用 PolyArea 对象上的一个名为 Difference 的方法来实现这一点,然后使第一个等于差异,但在示例 3 中,差异是有效的,所以我的问题是我如何在示例 3 中将第一个多边形调整到最后一个多边形。我认为必须将多边形分解为两个多边形,但我该如何实现这一点。

多边形示例

4

2 回答 2

1

应用剪辑差异应该删除重叠区域,但我不知道为什么这在你的第三种情况下不起作用。我认为这是您使用的理发器的缺陷。您应该使用不同的裁剪器(例如Clipper)获得更大的成功。

于 2012-11-12T13:51:23.590 回答
0

我发现了为什么当我在 DbGeometry 对象上运行差异方法时它不起作用,所以我尝试将 dbgeometry 对象转换为 dbGeography 然后它起作用了。也许有一天它可以帮助其他人。

于 2012-11-13T10:28:45.460 回答