Определить, доступны ли спутниковые изображения Google

Можно ли с помощью API Карт Google определить, будут ли доступны спутниковые фрагменты с заданными координатами и уровнем масштабирования?


person Kyle Decot    schedule 03.06.2011    source источник


Ответы (1)


Да, это возможно. Прочтите раздел «Изображение с максимальным увеличением» в Google Maps API версии 3, чтобы получить объяснение и пример кода.

http://code.google.com/apis/maps/documentation/javascript/services.html#MaxZoom

Вот пример кода из этой документации, который «показывает карту мегаполиса Токио. Щелчок в любом месте карты указывает максимальный уровень масштабирования в этом месте. (Уровни масштабирования вокруг Токио обычно варьируются между уровнями масштабирования 18 и 21.)»

var map;
var maxZoomService = new google.maps.MaxZoomService();

var tokyo = new google.maps.LatLng(35.6894875, 139.6917064);

function initialize() {
  var mapOptions = {
    zoom: 11,
    center: tokyo,
    mapTypeId: google.maps.MapTypeId.HYBRID
  }
  map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);

  google.maps.event.addListener(map, 'click', showMaxZoom);
}

function showMaxZoom(e) {
  maxZoomService.getMaxZoomAtLatLng(e.latLng, function(response) {
    if (response.status != google.maps.MaxZoomStatus.OK) {
      alert("Error in MaxZoomService");
      return;
    } else {
      alert("The maximum zoom at this location is: " + response.zoom);
    }
    map.setCenter(e.latLng);
  });
}
person Trott    schedule 04.06.2011
comment
Этот ответ не поможет международным читателям, потому что Google предоставляет переведенную документацию, в которой отсутствует ваш пример кода (по крайней мере, немецкая версия). - person Bananeweizen; 14.06.2011
comment
@Bananeweizen: Не уверен, что это вообще поможет, но я отредактировал ответ, включив в него соответствующий пример кода. (Я очень удивлен, что документация на немецком языке неполна.) - person Trott; 14.06.2011
comment
Например, в Бразилии максимальное увеличение в сельской местности составляет 19, а в больших городах максимальное увеличение составляет 20. - person devasia2112; 14.06.2011
comment
@Фернандо: Верно! Обнаружение максимального уровня масштабирования — это то, что делает код. (Приведенный выше код написан для Токио, Япония.) Я вижу, что в бразильском португальском переводе Google также нет этого примера кода. Опять же, удивительно и стыдно. Надеюсь, он будет обновлен очень скоро. - person Trott; 15.06.2011