从2个或更多MKPolygon对象的交集创建MKPolygon

时间:2011-06-10 02:32:45

标签: objective-c ios cocoa-touch mkmapview

有谁知道这是否可行。我正在尝试创建一个非常复杂的多边形,并想知道是否有任何方法可以使用两个或更多的MKPolygon对象并从中创建一个新的MKPolygon。

谢谢!

2 个答案:

答案 0 :(得分:0)

MKPolygon和它的祖先相当简单。你可以轻松做的最多就是制作一个大的mkpolygon并开始填充内部多边形“孔”或环以创建更复杂的形状。

话虽如此,如果你在谈论真正的几何数学,联合,交叉和更复杂的函数,你可能想要使用一个特定于地理的框架(或将你的lat / long视为x / y双浮点数和只需使用常规的教科书几何函数来构建2d多维数据集

Michael Weisman有一个名为ShapeKit的好地理/ GIS库,专门面向iOS。它充当了GEOS和PROJ.4的前端,这两个极其强大的库。这可能是你最好,最安全的选择。

您可能想要探索的另一个选项,如果您不必在设备上计算多边形,...从GIS驱动的数据库服务器提供多边形。我对shapekit进行了一些修改,让你从mysql或其他地方导入二进制WKB多边形......如果需要,你可以在那里使用快速强大的函数来卸载处理能力。或者你甚至可以将它们从Esri shapefile直接带到iOS,如果那是你的来源......我也在GitHub上做了proof of concept

答案 1 :(得分:0)

我为此写了一个解决方案。查看MKPolygon-GPC。它是围绕Alan的GPC库的Objective-C包装器。