OGeek|极客世界-中国程序员成长平台

标题: ios - 如何从 GPX 文件实例化 NMARoute 对象 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 14:25
标题: ios - 如何从 GPX 文件实例化 NMARoute 对象

我们正在使用 iOS Premium HereMaps SDK。我们的基本问题是如何从一个非常详细的 GPX 文件中实例化一个 NMARoute 对象。此对象应用于自定义逐向导航。目前我们采取以下步骤:

  1. 从 GPX 文件中创建一个 NMAGeoCoordinates 对象数组
  2. 创建一个 NMAWaypoints
  3. 数组
  4. 调用[NMACoreRouter calculateRouteWithStops:]

不幸的是,我们面临着多重限制:

我们真正在寻找的是从 GPX 文件中获取 NMARoute 对象的更好方法。令我们惊讶的是,有一个 REST endpoint由 HereMaps SDK 提供,用于将 GPX 文件转换为 json 数据,但遗憾的是无法将此数据输入 iOS SDK。



Best Answer-推荐答案


遗憾的是,这不适用于当前的 HERE iOS SDK。 TbT Navigation 和路由之间存在紧密耦合,因此 Navigation 目前只能与内部路由引擎配合使用。

一些背景:

想象一下,您在导航时从预先计算的 route 得出(甚至可能在您没有得出时发生,例如由于 GPS 跳跃、复杂情况下的错误 map 匹配、暂时丢失信号(如果您从未映射或私有(private)开始)路网等)导航将要求重新计算路由。如果您的 GPX 轨迹与基于 iOS MobileSDK 的应用程序中的道路网络和 map 数据不匹配怎么办?所以你的踪迹告诉指导开车去某个地方,那里没有路了?指导将拒绝并强制重新计算。在你的情况下,你很可能不想要交通优化导航,但是如何处理阻塞的道路(所以不仅仅是缓慢的自由流动速度,而是完全阻塞)?我建议在此处启用优化 - 但这也不适用于静态 GPX 跟踪。

正如您已经说过的,更好的解决方案是在本地重新计算一条非常接近您的轨迹的路线,但会考虑本地 map 数据和约束。

你提到的限制是正确的,但是:

关于ios - 如何从 GPX 文件实例化 NMARoute 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48185886/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4