Рассчитайте начальный лучший центр И лучший начальный масштаб в зависимости от списка местоположений - PullRequest
1 голос
/ 03 ноября 2010

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

У меня есть список местоположений (lat & lng), который может быть действительно где угодно (т.е. все в одном городе; один в Бангладеш иодин в Париже ...).

При инициализации карты Google я хотел бы сосредоточиться на барицентре в этом месте.

Так что это мой первый вопрос: Как рассчитатьбарицентр с объектом местоположения

Затем я хотел бы, чтобы на начальной карте отображались все местоположения (маркеры).Так что это проблема масштабирования, и это мой второй вопрос: Как рассчитать масштаб на карте Google, чтобы отображались все маркеры на карте

Я надеюсь, что у меня естьбыло ясно.Также обратите внимание, что я имел в виду барицентр со всеми точками, равными 1.

С наилучшими пожеланиями.

1 Ответ

4 голосов
/ 03 ноября 2010

Чтобы увеличить, чтобы включить набор результатов:

var locations = new google.maps.LatLngBounds();
...
function zoomToViewports(locations) {
  var bounds = new google.maps.LatLngBounds();

  for (var i in locations) {
    bounds.union(locations[i].geometry.viewport);
  }
  map.fitBounds(bounds);
}

Сделав это, барицентр находится в середине экрана, поэтому, если вам действительно нужно его значение, его легко рассчитать [(max (lat) -min (lat) / 2, (max (lng) -min (lng) ) / 2]

НТН

Вы можете снять JS с этой страницы на моем сайте , которая делает то, что вы описываете

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...