如何从纬度和经度点获得最近的X点?

时间:2012-06-28 14:08:27

标签: asp.net google-maps c#-4.0 maps

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

2 个答案:

答案 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()作为排序函数。 请注意,这都是客户端完成的。