【问题标题】:How do you determine whether an user has deviated from a route?您如何确定用户是否偏离了路线?
【发布时间】:2013-03-28 05:09:29
【问题描述】:

我正在尝试确定用户是否偏离了给定路线。例如,在很多 GPS 路线应用模式下,如果您偏离当前路线太远,应用程序会重新计算路线。

更具体地说,我试图找出给定坐标是否偏离给定一组折线的阈值。

确定这一点的最佳方法是什么?

【问题讨论】:

    标签: ios algorithm map


    【解决方案1】:

    计算设置到当前点的多段线中最近的线,然后得到距离,仅此而已。只有一种方法,没有“最好”的方法。

    【讨论】:

    • 我可能应该澄清一下,“最好”是指最有效的。可以提供计算吗?假设一条折线由两个 GPS 坐标组成,你如何确定给定任意 GPS 坐标的距离?你如何从路线的所有折线上推断出这个,​​或者这是一个蛮力操作?
    • 嗯。这需要持续跟踪当前坐标,因此您必须担心该折线中最多三条线,当前最近的一条线和两条相邻的线。答案适用于坐标是随机的情况,例如用户已被传送。如果在迭代之间坐标变化很小,最好的方法是跟踪 3-4 条折线并仅将当前位置与它们进行比较。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    • 2021-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    相关资源
    最近更新 更多