Алгоритм для поиска всех местоположений широты и долготы на определенном расстоянии от заданного местоположения широты и долготы

Учитывая базу данных мест с местоположениями по широте и долготе, например 40.8120390, -73.4889650, как мне найти все местоположения на заданном расстоянии от определенного местоположения?

Не похоже очень эффективно выбирать все местоположения из БД, а затем проходить их по одному, получая расстояние от исходного местоположения, чтобы увидеть, находятся ли они в пределах указанного расстояния. Есть ли хороший способ сузить первоначально выбранные местоположения из БД? Если у меня есть (или нет?) Суженный набор местоположений, я все равно буду проходить их одно за другим, чтобы проверить расстояние, или есть лучший способ?

Язык, на котором я это делаю, не действительно важно. Спасибо!

74
задан Valera 17 February 2011 в 15:53
поделиться