确定行进路径 mkmapview swift 上的距离

Posted

技术标签:

【中文标题】确定行进路径 mkmapview swift 上的距离【英文标题】:Determine distance on travelled path mkmapview swift 【发布时间】:2020-07-27 05:49:42 【问题描述】:

我有一个功能,用户可以通过他的汽车从起点到终点。 我需要计算用户旅行的起点和终点之间的距离。到目的地可能有多条路线,我从 MKDirectionRequest 对象获取这些路线。但是如何计算司机访问过的路线及其距离,无论它是最短还是最长的路线。

【问题讨论】:

【参考方案1】:

当驾驶员位置更新时,您需要在驾驶员随车移动时存储(可能在服务器上)驾驶员的当前位置。

一旦司机完成骑行,您需要计算经纬度的距离。

因此,您需要添加 2 个按钮。

    开始骑行:所以当用户开始骑行时,用户按下开始骑行按钮,然后您需要开始列出司机随车移动时的位置更新并将其存储在服务器上。

    Stop Ride:所以当司机到达目的地然后用户按下停止乘车所以在这里你需要停下来收听位置更新并计算所有存储的纬度。而且很长。

希望对你有帮助。

【讨论】:

没错。我正在遵循保存行进路径的纬度和经度的相同过程。但是在计算距离时,如果与 Apple Maps 相比,它并没有给我准确的距离。我正在使用 MKDirectionRequest 方法来计算两个 CLLocation 对象之间的距离。 MKDirectionRequest 可能使用直线而不是驱动程序经过的路径计算距离。 还有其他的计算方法吗?我有一个经过纬度的数组,但最后它计算了数组中第一个点和最后一个点之间的距离,如果有多条路线,这可能会导致不同的距离。 目前无法使用MapKit,但您可以使用 Google 的方向 API 来实现。

以上是关于确定行进路径 mkmapview swift 上的距离的主要内容,如果未能解决你的问题,请参考以下文章

Swift - 将 MKAnnotationView 添加到 MKMapView

如何在swift 3.0中计算用户从当前位置行进的距离

MKPinAnnotationView 不在 MKMapView 中显示,即使它是使用 Swift 正确添加的

当我们在swift中使用MKMapView点击mapView时如何移动到第二个Viewcontroller?

光线追踪、光线投射、光线行进和路径追踪有啥区别?

Apollo自动驾驶之规划(二)