Читать книгу Leaflet - Astrid Günther - Страница 26

Wir unterteilen die Welt in Kacheln

Оглавление

Um eine Karte anzuzeigen, wird die Welt also in Ausschnitte, genau genommen in Quadrate zerlegt. Die Quadrate werden 'Tiles' genannt, das ist das englische Wort für 'Kacheln'. Jedes Quadrat ist exakt 256 Pixel x 256 Pixel groß.

Nicht nur OpenStreetMap, auch die Google Maps API unterteilt ihre Kartenbilder in Kacheln. Wenn Sie die Website https://www.google.de/maps aufrufen und eine andere Vergrößerungsstufe wählen, wird ermittelt, welche Daten erforderlich sind. Diese Daten werden dann in einen Satz mit Kacheln übersetzt und angezeigt. Dabei bildet die Zoomstufe 0 die ganze Welt auf ein Quadrat ab. Teilt man den Erdumfang von 40.038 Kilometern durch die 256 Pixel der Kachel sieht man im Ergebnis, dass ein Pixel 156,4 Kilometer darstellt. Das ist noch nicht sehr detailliert. Bis Zoomstufe 19 ändert sich eine ganze Menge. In der nachfolgenden Tabelle sehen Sie, dass bei Zoomstufe 19 ein Pixel einem Bereich von 0,3 Metern auf der Erde entspricht. Damit kann man schon etwas anfangen!

Zoom-Stufe Kachel-Anzahl Kachel-Breite entspricht Ein Pixel entspricht
0 1 40.038 km 156 km
1 4 20.019 km 78 km
2 16 10.009 km 39 km
3 64 5.004 km 19,5 km
4 256 2.502 km 9,8 km
15 1 Mrd. 1.224 m 4,8 m
16 4 Mrd. 612 m 2,4 m
17 17 Mrd. 306 m 1,2 m
18 68 Mrd. 306 m 0,6 m
19 275 Mrd. 76 m 0,3 m

Die vollständige Tabelle können Sie unter der Adresse http://wiki.openstreetmap.org/wiki/Zoom_levels26 mit weiteren Angaben im Internet abrufen.

Vielleicht probieren Sie nun das Zoomen im vorangegangenen Beispiel aus und wundern sich, dass Sie die Karte nur bis zur Zoomstufe 18 vergrößern können. Das liegt daran, dass bei dieser OpenStreeMap Karte standardmäßig die Option maxZoom mit 18 gesetzt ist. Sie können diese Option jedoch überschreiben. Wie das geht, sehen Sie im nachfolgenden Programmcodebeispiel mit einem Stern markiert. Weitere Informationen finden Sie im Kapitel zur Karte des Anbieters Stamen.

<!DOCTYPE HTML> <html> <head> <title>Eine OpenStreetMap Karte mit Leaflet</title> <link rel="stylesheet" href="../leaflet/leaflet.css" /> <script src="../leaflet/leaflet.js"></script> </head> <body> <div style="height: 180px;" id="mapid"></div> <script> var mymap = L.map('mapid').setView([50.27264, 7.26469], 13); L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', { *minZoom: 0, maxZoom: 19 } ) .addTo(mymap); </script> </body> </html> <!--index_995a.html-->

Vielleicht sind Sie es gewohnt, bei der Darstellung von Landkarten in den Zahlen eines Maßstabs zu denken? Bei digitalen Karten gibt es keinen Maßstab im Sinne einer Papierkarte, weil die Druckauflösung nicht bekannt ist und ein Maßstab hiervon abhängt. Ein Maßstab kann immer nur relativ zur Auflösung angegeben werden.

Leaflet

Подняться наверх