【问题标题】:Force current location identifier (blue dot) to snap to the nearest path强制当前位置标识符(蓝点)捕捉到最近的路径
【发布时间】:2014-01-26 21:48:39
【问题描述】:

我是 Stackoverflow 的新手,如果我的研究不够好,我深表歉意,但我找不到我的问题的答案。

我正在构建一个基于跟踪的应用程序(现在是 iOS)。我将使用 GPS 测量设备测量未定义区域,并计划将其导出为 KML 或 GPX 文件。话虽如此,我希望用户能够使用我的应用程序来跟踪他们的位置并导航我提供的路径。

我担心他们当前的位置(蓝点或箭头)不会总是出现在路线上,因为 GPS 信号并不总是正确的。如果在 X 距离以内,我希望他们的位置始终显示在路径上(例如,如果他们在 10 英尺或更多英尺之外,他们可能不会尝试遵循我定义的路径)。本质上,我希望蓝点捕捉到我定义的路径上最近的位置。

任何帮助将不胜感激!谢谢!

【问题讨论】:

    标签: ios gps mkmapview mapkit


    【解决方案1】:

    我认为您无法移动地图提供的蓝点。如果您要求显示它,它会使用位置管理器确定的当前位置。

    但是,您可以编写一个应用程序来监控用户的当前位置,当它接收到位置更新时,在地图上一个看起来像蓝点的自定义注释周围移动,然后按照您的描述将其捕捉到最近的路径。

    我建议您推迟此操作,直到您获得使用地图工具包和位置管理器的经验为止。首先还有很多其他的事情需要担心。

    【讨论】:

    • 感谢您的回复!我不打算使用“蓝点”作为当前位置指示器,所以我很喜欢你的建议。从本质上讲,我想要一种像谷歌地图或苹果地图或地图任务(等)这样的体验,您可以在其中看到您的位置映射在道路上/相对于道路(或在我的情况下为小路)并且它永远不会掉下来。如果您在有人开车时观看导航应用程序,这在大多数情况下只是一个平稳的进展。这是否澄清了我正在寻找的更多内容?我想为我定义的小径制作一个迷你谷歌地图(没有方向,只是免费查看)。
    【解决方案2】:

    不要试图移动官方蓝点。你可能做不到,即使你可以,你也不应该这样做,因为它被广泛接受是指你当前的位置,而不是“距离你当前位置最近的部分”。如果您的数据足够详细,您可以找到最近的点,检查之前或之后的点是否更接近当前位置,然后在两者之间的某处画一个标记。但实际上,如果有人在距离小径 10 英尺的范围内,他们必须放大才能注意到蓝点并不完全在线,所以像邓肯一样,我建议不要尝试这个,除非你是 100%肯定会卖出更多的应用程序。

    【讨论】:

    • 我同意你的看法。即使可能,我也不想尝试移动“蓝点”。我只是想找出一种方式,用户可以使用我定义的路径地图来导航不同的路径,同时获得像谷歌地图这样的用户体验。我的视觉是有角度的视图(鸟瞰图/3D 视图),因此用户可以适当地导航。
    猜你喜欢
    • 1970-01-01
    • 2010-12-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-22
    • 2015-02-03
    • 1970-01-01
    • 2019-06-02
    • 2012-09-16
    相关资源
    最近更新 更多