如何连续计算位置更新之间的距离以获得总距离

Posted

技术标签:

【中文标题】如何连续计算位置更新之间的距离以获得总距离【英文标题】:How to continuously calculate distance between location updates to get a total distance 【发布时间】:2021-01-03 10:26:01 【问题描述】:

。我尝试使用 listview 在时间 t-1(先前位置)和时间 t(当前位置)捕获坐标,但无法获得好的结果。我在互联网上搜索过,到目前为止我找到的解决方案是计算两点之间的距离。在我的问题中,将会有一系列位置更新导致坐标列表。请帮忙。

@Override
    public void onLocationChanged(Location location) 
        if (location !=null)
        
            Lat=location.getLatitude();
            Long=location.getLongitude();
            
    // How to continuously calculate distance between location updates to finally get the total distance when I stop location update

        else
            Toast.makeText(getActivity(), "No location update", Toast.LENGTH_LONG).show();
        
    

【问题讨论】:

“到目前为止我找到的解决方案是计算两点之间的距离”:您还需要什么?这些距离的总和不正是您想要的吗? “我尝试使用 listview 在时间 t-1(先前位置)和时间 t(当前位置)捕获坐标,但无法获得好的结果。”结果出了什么问题?也许不应该经常进行计算,因为位置总是存在小的不准确,并且在小距离内,小的不准确会导致重大错误。 (例如,10 米距离内的 5 米误差与 100 米距离内的 5 米误差。) 【参考方案1】:

我返回总距离的位置为我提供了所需的结果。

【讨论】:

以上是关于如何连续计算位置更新之间的距离以获得总距离的主要内容,如果未能解决你的问题,请参考以下文章

如何在php中计算两个位置之间的距离(以公里为单位)?

道路距离,两地之间的实际距离

如何将函数应用于增加数据框中的数据子集

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

如何计算百度地图上两点的距离

如何将距离(以公里为单位)添加到以度和分钟为单位的位置坐标中,以获得 Java 中的新位置坐标?