• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 如何绘制不在道路上的路线,MKMapView

[复制链接]
菜鸟教程小白 发表于 2022-12-11 17:01:42 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

所以我一直在尝试使用 MKMapView 和覆盖来创建“不在道路上的道路”。这听起来可能很奇怪,但我想做的是在我的 iOS 应用程序中,我想绘制特定酒店提供的游览路线,但是到目前为止我发现的所有帖子都集中在现有道路上,因为游览经过森林,河流等。没有道路可以帮助我。

由于没有道路我不得不即兴创作,所以我决定为每次游览制作一个 plist(我可能也可以采用另一种类型的文件,我只是喜欢使用 plist 的),并在那里制作所有坐标并使用谷歌地球获取这些坐标,但在 60 个不同的坐标之后我停下来,因为这太荒谬了。

然后我尝试编写一个脚本,当我在运行时点击 map 时,将坐标写入 plist。虽然这可行,但仍然很不舒服,因为我无法将自动创建的文件保存在 Xcode 项目中,而且它总体上不如我希望的那样好。

所以我的问题是,在如何创建不在街道上的路线方面,我是否可能遗漏了一些更简单的方法。



Best Answer-推荐答案


尝试使用该网站创建 gpx文件。

另外请注意,Xcode 仅使用标签,因此如果您找到生成基于 的 gpx 文件的工具,Xcode 将无法正确模拟您的位置。因此,在链接网站创建的文件中,您需要将 更改为 。下面的代码可能有助于获取折线。

func addRoute() {
  let thePath = NSBundle.mainBundle().pathForResource("Route", ofType: "gpx") // Not sure on this part
  let pointsArray = NSArray(contentsOfFile: thePath!)

  let pointsCount = pointsArray!.count

  var pointsToUse: [CLLocationCoordinate2D] = []

  for i in 0...pointsCount-1 {
    let p = CGPointFromString(pointsArray![i] as! String)
    pointsToUse += [CLLocationCoordinate2DMake(CLLocationDegrees(p.x), CLLocationDegrees(p.y))]
  }

  let myPolyline = MKPolyline(coordinates: &pointsToUse, count: pointsCount)

  mapView.addOverlay(myPolyline)
}

关于ios - 如何绘制不在道路上的路线,MKMapView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38485554/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap