Warstwy

Wybierz platformę: Android JavaScript

Warstwy to obiekty na mapie, które składają się z jednego lub kilku osobnych elementów, ale są zmanipulowane jako pojedyncza jednostka. Warstwy zwykle odzwierciedlają kolekcje obiektów, które dodajesz na mapie, i wyznaczają wspólne powiązanie. Interfejs Maps JavaScript API zarządza prezentacją obiektów w warstwach przez renderowanie ich elementów składowych w jednym obiekcie (zwykle jest to nakładka z kafelkami) i wyświetlanie ich jako zmian widocznego obszaru mapy. Warstwy mogą też zmieniać warstwę prezentacji mapy, nieznacznie modyfikując podstawowe elementy w sposób spójny z warstwą. Pamiętaj, że z założenia do większości warstw nie można uzyskać dostępu przez ich pojedyncze obiekty. Dostęp do większości warstw może być uzależniony od ich działania.

Przegląd warstw

Interfejs Maps JavaScript API ma kilka typów warstw:

  • Warstwa danych Map Google to kontener na dowolne dane geoprzestrzenne. Warstwa danych może służyć do przechowywania danych niestandardowych lub wyświetlania danych GeoJSON na mapie Google.
  • Warstwa Mapa termiczna renderuje dane geograficzne za pomocą wizualizacji Mapa termiczna.
  • Warstwa KML renderuje elementy KML i GeoRSS w nakładce kafelków interfejsu Maps JavaScript API.
  • Warstwa natężenia ruchu pokazuje na mapie natężenie ruchu.
  • Warstwa Transport publiczny wyświetla na mapie sieć transportu publicznego w Twoim mieście.
  • Obiekt Warstwa Rowery renderuje warstwę ścieżek rowerowych lub nakładek związanych z rowerami we wspólnej warstwie. Ta warstwa jest domyślnie zwracana w funkcji DirectionsRenderer, gdy wysyła żądanie trasy dojazdu samochodem BICYCLING.

Dodawanie warstwy

Aby dodać warstwę do mapy, musisz tylko wywołać funkcję setMap(), która przekazuje jej obiekt mapy, na której ma zostać wyświetlona warstwa. Aby ukryć warstwę, wywołaj setMap(), przekazując null.

Poniższy fragment wyśrodkowuje mapę na Londynie w Wielkiej Brytanii i jest dodawana warstwa Transport publiczny.

var mapOptions = {
  zoom: 13,
  center: new google.maps.LatLng(51.5,-0.11)
}

var map = new google.maps.Map(document.getElementById("map"), mapOptions);

var transitLayer = new google.maps.TransitLayer();
transitLayer.setMap(map);