2

我对NetTopologySuite.Geometries.Polygon固定边界框矩形(105x68)内的动态区域感兴趣。

它有时可以打破矩形(这很好),但我只对边界框覆盖的区域感兴趣。

所以基本上我想得到结果:

//Polygon is completely inside my rectangle
var FinalArea = Polygon.Area();

// Polygon breaks out of bounding box
var FinalArea I Polygong.Area() - (double)AreaOutsideTheBoundingBox;

如何使用 C# 中的 NTS Topology Suite 实现这一点?

插图

4

1 回答 1

3

要获取矩形内多边形的面积:

poly.Intersection(rect).Area;

要获取矩形外多边形的面积:

poly.Area - poly.Intersection(rect).Area;

要获得矩形的面积减去多边形:

rect.Difference(poly).Area;
于 2017-02-02T18:25:47.560 回答