このライブラリNetTopologySuite
を使用して、ジオメトリ/(マルチ) ポリゴン (C#) を操作しています。
ある時点で、2 つのジオメトリの「結合」と「交差」の両方が必要になります (機能的には、2 つのジオメトリの結合が必要であり、その結合の重複部分を決定します)。
CascadedPolygonUnion.Union(new List<Geometry> { geometry1, geometry2 }))
を使用してユニオンを取得し、 を使用して交差点を取得できることを知っていgeometry1.Intersection(geometry2)
ます。
しかし、2 つのポリゴンの「交差」は基本的にユニオンの「重複」部分であるため、1 つの関数呼び出しで交差とユニオンを決定するルーチンはありませんか?
元。
var result = GetUnionAndIntersection(geometry1, geometry2)
result.Union;
result.Intersection;
質問の主な理由は、そのようなルーチンが存在する可能性があるという仮定です。これは、ルーチンが重複領域に関する共通の知識を共有しているため、2 つの個別のルーチンよりも高速に実行されるためです...