我们正在使用该库NetTopologySuite
来处理几何/(多)多边形(在 C# 中)。
在某些时候,我们需要两个几何的“并集”和“交集”(从功能上讲,我们想要两个几何的并集并确定该并集的重复部分)。
我知道我可以CascadedPolygonUnion.Union(new List<Geometry> { geometry1, geometry2 }))
使用geometry1.Intersection(geometry2)
.
但是由于两个多边形的“交集”基本上是联合的“重复”部分,难道没有一个例程可以在一个函数调用中确定交集和联合吗?
前任。
var result = GetUnionAndIntersection(geometry1, geometry2)
result.Union;
result.Intersection;
问题的主要原因是假设可能存在这样的例程,因为它比两个单独的例程执行得更快,因为例程共享一些关于重复区域的常识......