【问题标题】:SphericalUtil.computeDistanceBetween() vs Location.distanceBetween()SphericalUtil.computeDistanceBetween() 与 Location.distanceBetween()
【发布时间】:2017-05-17 07:58:15
【问题描述】:

Google Maps Android API Utility Library SphericalUtil.computeDistanceBetween() 和 Android [Location.distanceBetween()](https://developer.android.com/reference/android/location/Location.html#distanceBetween(double, double, double, double, float[])) 有什么区别?

它们都以米为单位计算两个地理位置之间的距离。

我应该在 Android 中使用哪一个?

编辑:由于某种原因,markdown 链接无法正常工作,即使它在预览中很好......

【问题讨论】:

    标签: android google-maps


    【解决方案1】:

    SphericalUtil.computeDistanceBetween() 计算位置之间的弧度距离并将其乘以EART_RADIUS

    Location.distanceBetween() 基于http://www.ngs.noaa.gov/PUBS_LIB/inverse.pdf 并使用“逆公式”。距离是使用 WGS84 椭球定义的。

    IMO 最好使用Location.distanceBetween(),它往往更精确。

    【讨论】:

      【解决方案2】:

      与 SphericalUtil.computeDistanceBetween() 相比,distanceTo() 给出了准确的结果

      【讨论】:

        猜你喜欢
        • 2020-01-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-20
        • 1970-01-01
        相关资源
        最近更新 更多