我正在开发一个嵌入了用mkmapkit制作的mapView的iPhone应用程序。 我有两个坐标,我正在追踪这两点之间的方向。
一切都运作良好。我正在使用谷歌地图api:maps.googleapis.com/maps/api/directions来检索xml以及方向的所有步骤。
但有一件事很奇怪:我只是无法理解为什么驾驶方向不准确。 在两个步骤之间,它跟踪一条右线并且不会沿着道路行走,而行走模式则沿着道路追踪非常精确的方向。驾驶模式: http://www.michael-blin.fr/misc/aden/google/driving.png
步行模式: http://www.michael-blin.fr/misc/aden/google/walking.png
我的问题很简单:你有没有使用谷歌地图api,你能理解为什么一个比另一个更准确...
答案 0 :(得分:6)
您的行车路线似乎带您沿着主要道路或高速公路行驶,因此每个点之间的行车路线没有变化。你没有说明你从方向api得到的答复,但我的猜测是你正在接收沿着必须改变方向的路线的步骤,例如。高速公路路口等:
Google文档: steps数组中的每个元素 定义了一个步骤 计算方向。一步就是 方向的大多数原子单位 路线,包含一个步骤 描述一个特定的,单一的 旅程指导。例如。 “转 离开了W. 4th St.“不仅仅是这一步 描述了指令但也 包含距离和持续时间 有关此步骤的信息 涉及以下步骤。对于 例如,表示为“合并到...的步骤” I-80 West“可能包含持续时间 “37英里”和“40分钟” 表明下一步是37 距离此步骤40英里/分钟。
当你走路时,你会更频繁地轮流以获得最短的路线。
路线api不会为您提供与实际行驶路线相匹配的确切覆盖。只有您进行更改的位置。
或者,您可以查看回复中的overview_polyline
字段。它可能比使用航点更平滑。