Google Map получает 10 ближайших баллов из всех маркеров на карте - PullRequest
6 голосов
/ 02 декабря 2011

Я пытаюсь получить 10 ближайших маркеров из центра карты Google и отсортировать их по центру по расстоянию в Javascript. Допустим, у меня есть 100 маркеров в массиве Javascript - я хотел бы отобразить больше информации о 10 закрытиях в неупорядоченном списке HTML. Я нашел похожий пример для API версии 2 ( пример в версии 2 ), но ничего не для версии 3 API карты Google.

Ответы [ 2 ]

16 голосов
/ 02 декабря 2011

Что бы ни случилось, вам нужно рассчитать все расстояния. Вы можете сделать это самостоятельно с помощью простых уравнений или использовать библиотеку геометрии Google: http://code.google.com/intl/pl-PL/apis/maps/documentation/javascript/geometry.html и ее функцию: computeDistanceBetween (). Затем сохраните расстояние в свойстве пользовательского маркера, например:

marker.distance = google.maps.geometry.spherical.computeDistanceBetween(marker.position, center.position);

и сортируй как хочешь. Надеюсь, это поможет.

0 голосов
/ 02 декабря 2011
  1. Сортировка массива по близости к центральной точке вашей карты. Используйте sort().
  2. Нарезать первые 10 с slice().
  3. Поместите их на карту.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...