我有一个带有纬度和经度坐标的点列表,我想从中输入一个点X.我需要帮助提出一个算法来确定最接近该点的3个列表成员x。
答案 0 :(得分:1)
您可能必须使用Haversine Formula。它计算地球表面上两点之间的大圆距离。 Here's一篇很好的文章解释了这一点,here's回答了与你类似的问题。希望有所帮助!
答案 1 :(得分:0)
请参阅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()作为排序函数。 请注意,这都是客户端完成的。