Вычислите лучшее местоположение в Латинской и Новой Зеландии для карты GMaps - PullRequest
1 голос
/ 27 января 2012

У меня есть массив с 10 различными значениями широты и долготы, собранными из GMaps.Я хочу показать их все на одной карте одновременно.Мне нужно рассчитать лучшие значения широты и долготы и уровень масштабирования (или иметь формулу, которая рассчитывает их для определенного уровня масштабирования), чтобы все маркеры были видны.

Я могуреализовать математическую формулу на выбранном мной языке, но любые предложения приветствуются.

Спасибо!

Ответы [ 2 ]

1 голос
/ 27 января 2012

Хитрость заключается в том, чтобы добавить их все в объект LatLngBounds и затем использовать функцию .getCenter () с JavaScript. Вот пример псевдо-кода для V2:

var bounds = new GLatLngBounds();

for(var i;i < array.length();i++)
{
    bounds.extend(new GLatLng(array[i].lat, array[i].lng));
}

bounds.getCenter();
0 голосов
/ 27 января 2012

Вам не нужно рассчитывать.

Создайте новый google.maps.LatLngBounds ();затем добавьте google.maps.LatLng к этим границам с помощью метода extends.

Затем вам просто нужно использовать setCenter () карты с bounds.getCenter ()

. Вы также можетеполучите N / E и S / W lat и lng ваших границ.

...