Google maps api 3 从坐标列表中查找最近的位置

Google maps api 3 从坐标列表中查找最近的位置,google-maps-api-3,google-geocoding-api,Google Maps Api 3,Google Geocoding Api,我想从一系列位置(lat、lng)中找到给定地址(用户输入)的最近位置 (或者,更好的是,按距离对LCO排序) 我想在不显示地图的情况下实现这一点。 我也不确定哪种谷歌API最适合这种应用(地理编码API、地图v3等) 最好的方法是什么 如果有人能给我指出正确的方向,我将不胜感激 位置: [ { // Amsterdam "lat": 52.3702157, "lng": 4.8951679 }, { //

我想从一系列位置(lat、lng)中找到给定地址(用户输入)的最近位置

(或者,更好的是,按距离对LCO排序)

我想在不显示地图的情况下实现这一点。 我也不确定哪种谷歌API最适合这种应用(地理编码API、地图v3等)

最好的方法是什么

如果有人能给我指出正确的方向,我将不胜感激

位置:

[
    {
        // Amsterdam
        "lat": 52.3702157,
        "lng": 4.8951679
    },
    {
        // Berlin
        "lat": 52.5200066,
        "lng": 13.404954
    },
    {
        // Brussels
        "lat": 50.85,
        "lng": 4.35
    },
    {
        // Paris
        "lat": 48.856614,
        "lng": 2.3522219
    },
    {
        // Madrid
        "lat": 40.4167754,
        "lng": -3.7037902
    }
]
[
    {
        // Brussels
        "lat": 50.85,
        "lng": 4.35
    },
    {
        // Amsterdam
        "lat": 52.3702157,
        "lng": 4.8951679
    },
    {
        // Paris
        "lat": 48.856614,
        "lng": 2.3522219
    },
    {
        // Berlin
        "lat": 52.5200066,
        "lng": 13.404954
    },
    {
        // Madrid
        "lat": 40.4167754,
        "lng": -3.7037902
    }
]
用户输入:
安特卫普

{
    "lat": 51.2194475,
    "lng": 4.4024643
}
应返回:
布鲁塞尔

{
    "lat": 50.85,
    "lng": 4.35
}
或,按距离排序:

[
    {
        // Amsterdam
        "lat": 52.3702157,
        "lng": 4.8951679
    },
    {
        // Berlin
        "lat": 52.5200066,
        "lng": 13.404954
    },
    {
        // Brussels
        "lat": 50.85,
        "lng": 4.35
    },
    {
        // Paris
        "lat": 48.856614,
        "lng": 2.3522219
    },
    {
        // Madrid
        "lat": 40.4167754,
        "lng": -3.7037902
    }
]
[
    {
        // Brussels
        "lat": 50.85,
        "lng": 4.35
    },
    {
        // Amsterdam
        "lat": 52.3702157,
        "lng": 4.8951679
    },
    {
        // Paris
        "lat": 48.856614,
        "lng": 2.3522219
    },
    {
        // Berlin
        "lat": 52.5200066,
        "lng": 13.404954
    },
    {
        // Madrid
        "lat": 40.4167754,
        "lng": -3.7037902
    }
]

Android为您提供了一个很好的功能,可以计算距离(DistanceTo())(ref:)下面是一个如何将DistanceTo与google map api结合使用的示例:

    private double CalculateDistance(LatLng endPoint)
    {
        //Convert LatLng to Location
        Location location = new Location("tmploc");
        location.Latitude = endPoint.Latitude;
        location.Longitude = endPoint.Longitude;
        location.Time = currentLocation.Time; //Set time as current position's time. (could also be datetime.now)
        return currentLocation.DistanceTo(location);
    }
然后,您可以使用它来查找最低值:

public int Lowest(params int[] inputs)
{
  return inputs.Min();
}
(参考号:)


如果使用第一个方法,则将其添加到数组中,然后从第二个方法中获取最小的数字。您将实现您的目标。

我希望在不显示地图的情况下实现此目标。服务条款包括第节。您应该验证您的应用程序是否符合服务条款。如何使用php和html?