iPhone MapKit 是否可以从一系列触摸中映射坐标?

标签 iphone objective-c ios mapkit robotics

我得到了一个带有覆盖层的 MKMapView,它允许用户在 MKMapView 上进行手指绘画。我知道用 X、Y 点绘制的线是什么。 我想知道的是如何将这个 X、Y 点数组转换为坐标 2D 对象(纬度、经度) .

我看到它的方式是:用户打开叠加 map ,滚动到任何地方,然后在 map 上画一条线,线上的每个点都转换为坐标 2D, map 套件在每个坐标处放置一个图钉。

我知道可以查询 map View 的中心坐标,但是我不确定如何计算偏离中心的点的坐标。我知道纬度和经度有点“弯曲”,所以它不是一个简单的偏移方程。

是否有任何关于如何将 map View 触摸转换为坐标的开源或示例项目?

PS。我打算将它用于 iPhone 控制的机器人项目,为机器人设置航点。

最佳答案

应用手势识别器,然后尝试下面的代码以获取 View 上的坐标,然后将它们转换为纬度和经度。

CGPoint touchPoint = [gestureRecognizer locationInView:self.mapView];   
    CLLocationCoordinate2D touchMapCoordinate = 
        [self.mapView convertPoint:touchPoint toCoordinateFromView:self.mapView];

注意:未经测试,但似乎可以使用,这应该可以在没有覆盖的情况下工作

代码信用转到:How to add a push pin to a MKMapView(IOS) when touching?接受的答案

关于iPhone MapKit 是否可以从一系列触摸中映射坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11777436/

相关文章:

html - 如何在 safari "often visited"中显示自定义网站 Logo

iphone - 如何将核心数据添加到现有实用程序应用程序

iphone - 找不到 -lxml2 的库 仅当在设备而非模拟器上运行时

ios - 使用 presentingViewController 关闭 viewController

iPhone 屏幕休眠 - 内置接近传感器

objective-c - 自定义导航栏样式 - iOS

ios - 使用 Google map 在 iOS 中进行地理编码和反向地理编码

objective-c - 使用 NSString 值来引用 UILabel

ios - 从 NSURL 获取 Mime 类型

objective-c - Swift 应用迁移问题