问题描述
||
有谁知道这是否可能。我正在尝试创建一个非常复杂的多边形,并且想知道是否有办法采用2个或多个MKPolygon对象并从中创建一个新的MKPolygon。
谢谢!
解决方法
MKPolygon及其祖先非常简单。您最容易做的就是制作一个大的mkpolygon并开始填充内部多边形“孔”或环以创建更复杂的形状。
话虽如此,如果您正在谈论真实的几何数学,并集,交点和更复杂的函数,则可能要使用特定于地理位置的框架(或将经纬度视为x / y双重浮点数,而只需使用常规的教科书几何函数来构建二维多边形
Michael Weisman有一个很好的geo / GIS库,名为ShapeKit,专门针对iOS。它充当GEOS和PROJ.4(两个功能非常强大的库)的前端。这可能是您最好,最安全的选择。
如果不必计算设备上的多边形,则可能要探索的另一种方法是:从GIS支持的数据库服务器中为多边形提供服务。我对shapekit进行了一些修改,使您可以从mysql或其他地方导入二进制WKB多边形...您有快速强大的功能可以在需要时减轻处理能力。或者,如果您来自哪里,您甚至可以将它们从Esri shapefile直接带到iOS。我也在GitHub上进行了概念验证。
, 我已经为此写了一个解决方案。签出MKPolygon-GPC。它是Alan的GPC库的Objective-C包装器。