0

我致力于应用距离计算器,我想在其中计算总行驶距离。我有一些教程,其中位置会定期获取。我知道如何定期获取位置,但我想在用户在旅行时转弯时获取位置(即纬度和经度)。

所以我想知道如何让用户使用设备来获取位置。为简单起见,请参见下图,我想在其中获取点的位置A,B,C,D,E,F,G,H,I.
在此处输入图像描述

任何有关距离计算的进一步建议将不胜感激。
谢谢你。

4

2 回答 2

2

您可以以非常快的速度(例如每秒)检索新的位置坐标。因此,每秒使用 getBearing() 方法,然后我认为如果您与以前的值进行持续比较,您将能够获得每一个回合!

您还可以尝试计算最后几次测量的平均方位值,这样您就不会很快超过您的阈值并识别出许多您不想识别的角......(这些误报取决于质量GPS以及例如环境,因为GPS很容易受到建筑物等的影响)

于 2013-08-09T18:20:33.550 回答
1

为了计算距离,不需要专门检测用户的转弯。使用 LocationManager,您可以每秒获取位置。只需总结这些位置之间的距离即可。

如果您只有 E 和 F 的位置,或者如果您有 3 个额外的位置正在进行中,那么距离不会有任何影响。

您可能会错过确切的角落,但 LocationManager 可以非常快速地提供位置,所以这不是什么大问题,而且 GPS 定位也不是那么精确。

计算两个位置之间的距离

要计算两个Location对象之间的距离,请使用Location.distanceTo()which 将为您提供以米为单位的距离。

于 2013-08-09T18:54:33.857 回答