iOS MapKit - 定义不规则的可触摸区域

时间:2013-10-16 15:17:47

标签: ios cocoa-touch mapkit

我正在开发一款可让用户在地图上选择位置的应用。整个地图被细分为不规则区域(管理边界),当用户触摸地图上的某个点时,我需要能够确定该点属于哪个区域。只是为了澄清,用户没有有限的点集可供选择,他们只需点击地图上的任何地方。

实现这一目标的最佳方法是什么?我一直在看MKPolygon课程,但无法确定这是否可行。如果是,我会使用intersectsMapRect:协议的MKOverlay方法来检查匹配吗?这种地图操作有没有很好的教程?

1 个答案:

答案 0 :(得分:1)

这里的好方法可能是MapBox iOS SDK,它是RMInteractiveSource,专为此而设计。查看显示互动区域的sample app

这是通过一个空间优化的,具有离线功能的键值存储来完成的,它将不同缩放级别的像素键入任意内容值(区域名称,数据,图像等)

在MapKit中,您需要某种空间分析(可能是Spatialite?)来确定触摸点和不规则形状区域之间的交叉点。