如何从具有纬度和经度的点获取最近的 X 点



我有一个带有纬度和经度坐标的点列表,我想从中输入一个点,比如 X。我需要帮助想出一种算法来确定最接近该点 x 的 3 个列表成员。

您可能必须使用Haversine Formula。 它计算地球表面两点之间的大圆距离。 这是一篇很好的文章来解释这一点,这是对与您的类似问题的答案。希望对您有所帮助!

参见 google.maps.geometry.spherical 命名空间中的方法 computeDistanceBetween():

https://developers.google.com/maps/documentation/javascript/reference#spherical

然后,这是一个使用 Array.sort() 的旧 V2 演示:

http://maps.forum.nu/gm_array_sort.html

您可以将两者结合起来,实现computeDistanceBetween() 而不是 compareDistance() 作为排序函数。请注意,这都是客户端完成的。

最新更新