基于经纬度计算最近位置的算法

17 c# linq google-maps latitude-longitude

我目前正在尝试开发一种算法来计算哪些已知位置最接近当前已知位置.

我有一个说100个已知位置的列表(意思是我有长和纬度).在这100个中,我选择了一个位置,在选择了该位置后,我想要一个列表来显示8个最接近的已知位置.

如何解决这个问题呢?

编辑

我不是在寻找如何计算距离.我正在寻找如何计算哪些已知位置最接近当前位置.

例:

说该列表包含100个电影院的位置.我在剧院5,我想知道附近的其他电影院是什么.不是距离,而是它们的位置.

hsz*_*hsz 17

有一个Distance Matrix API.此API允许您计算某些给定位置之间的距离.

你也可以自己做一个 haversine formula

  • @hsz,但如果我有一个大型数据库并计算所有距离需要花费很多时间呢?有可能进行任何优化吗? (3认同)
  • 在某些时候,您必须决定从当前位置到 x 的_距离_是否超出您的阈值... (2认同)