【问题标题】:distanceTo() return distance not in meters !distance To() 返回距离不是米!
【发布时间】:2023-03-03 00:14:01
【问题描述】:

我正在实现一个应用程序,以从 gps 坐标数据库中搜索最近的本地场所。

我正在使用 Location 类 distanceTo() 函数来计算两个位置之间的距离,当前位置和数据库中的位置。

currentloc.setLatitude(loc.getLatitude());
currentloc.setLongitude(loc.getLongitude());

dbcurrent.setLatitude(C.getDouble(latindex));
dbcurrent.setLongitude(C.getDouble(lonindex));
distance = currentloc.distanceTo(dbcurrent);

这项工作很好,我可以使用这个距离来计算我的应用程序的其余部分的接近度,但它本身的距离显然不是以米为单位的我得到的结果像 4134801.4 我确信在这个距离是 3200 米案例。

这个问题有什么解释或解决办法吗?

谢谢大家。

【问题讨论】:

  • 首先仔细检查您的值以确保它们是正确的。然后打一个测试电话,你可能会得到一秒钟的经度差。看看会发生什么。
  • 想知道在您提问之前 SO 所做的现有问题的审查中如何可能遗漏了其他重复的问题?

标签: android gps location coordinates distance


【解决方案1】:

distanceTo() 工作正常,是你的错。 如果您提供 (0,0) 作为其他点,则可能会发生如此高的距离。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-04
    相关资源
    最近更新 更多