【问题标题】:Location and GeoPoint distanceTo()位置和 GeoPoint distanceTo()
【发布时间】:2012-11-02 15:15:07
【问题描述】:

我有用户的位置(位置类)。和地理点列表。计算距离有什么功能吗?还是编写自己的函数是唯一的解决方案?

【问题讨论】:

    标签: java android google-maps location geopoints


    【解决方案1】:

    我相信最简单的方法是使用 Android Location 类中的 distanceBetween 函数。

    Location userLocation = new Location();
    GeoPoint geoPoint = new GeoPoint();
    float[] results = new float[3];
    Location.distanceBetween(userLocation.getLatitude(), userLocation.getLongitude(), (geoPoint.getLatitudeE6()/1E6), (geoPoint.getLongitudeE6()/1E6), results); 
    //result[0] = distance in m
    

    【讨论】:

      【解决方案2】:

      这是一个简单的数学方程式。见Euclidean Distance

      确保您的单位有意义。如果没有库函数来执行此操作,则编码完全是微不足道的。

      【讨论】:

        【解决方案3】:

        Openmap 是一个使用地图构建应用程序的库。它具有用于计算两点之间的距离和方位角的类和方法。见课程Geo

        如果库太大,你可以从 svn 下载源代码,只复制 Geo 类及其依赖项。

        【讨论】:

          猜你喜欢
          • 2011-03-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-03-03
          • 2018-03-22
          • 1970-01-01
          • 1970-01-01
          • 2013-12-18
          相关资源
          最近更新 更多