Kartenkacheln sind eine Unterteilung der Welt in eine indexierte Raster. Sie können damit effizient und dynamisch auf Kartendaten zugreifen und diese nutzen. unterschiedlicher kartografischer Größenordnungen. Mit der Map Tiles API erhalten Sie Zugriff auf Mehrere thematische Geodatasets, darunter von Google zusammengestellte:
Roadmap-Bildkacheln basierend auf topografischen Vektordaten mit den kartografischen Stil.
Orthofotografien, die sowohl von Satelliten als auch von Bordkameras aufgenommen wurden und Bilder der Erde von oben (Nadir) liefern.
Höhenschattenkarten.
2D-Kartenkacheln sind alle mit Georeferenzen versehen und aneinander ausgerichtet. Sie sind ausgewählt basierend auf der geografischen Ausdehnung des Darstellungsbereichs und der Zoomstufe. Zoomstufen von 0 (um die ganze Welt zu sehen) bis 22 (zur Anzeige von Straßen und Blöcke).
Kartendesigns
Sie können Kartenkacheln für die folgenden Kartendesigns abrufen.
Kartendesign | Beschreibung |
---|---|
Roadmap | Straßen, Gebäude, POIs und politische Grenzen |
Satellit | Fotografische Bilder aus dem Weltraum |
Gelände | Eine Konturkarte mit natürlichen Gegebenheiten wie der Vegetation |
Um Kartenkacheln von der Map Tiles API anzufordern, müssen Sie zuerst eine
Sitzungstoken. Sitzungstoken
verfolgt den aktuellen Status Ihrer Karte und Ihres Darstellungsbereichs. Beim Einrichten der Sitzung
Token enthält, müssen Sie den Wert mapType
so festlegen, dass er zum gewünschten Kartendesign passt.
Dann müssen Sie das Sitzungstoken in jede Ihrer Anfragen an
Map Tiles API
Anfragen für Informationen zum Darstellungsbereich
Der Darstellungsbereich definiert die Größe des Rechtecks, das die Weltszene umrahmt. Anfragen zu Darstellungsbereichsinformationen geben Details zu den Kartenkacheln zurück, aus denen der aktuelle Darstellungsbereich besteht. Sie fordern Informationen zum Darstellungsbereich an, Sie vermeiden das Anfordern von Bildern mit Zoomstufen, die nicht vorhanden sind.
So verfügen die meisten Städte beispielsweise über Bilder mit Zoomstufe 22, aber nicht über das Meer, seit würde am Ende nur blaue Quadrate ohne Kartenelemente angezeigt werden.
Die Viewport-Anfrage ist eine HTTPS-GET-Anfrage im folgenden Format.
curl "https://tile.googleapis.com/tile/v1/viewport?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &zoom=zoom &north=north &south=south &east=east &west=west"
Die Anfrage enthält die folgenden Felder:
zoom
- Die Zoomstufe des Darstellungsbereichs.
north
,south
,east
,west
- Der am weitesten entfernte Nord-, Süd-, Ost- und Westpunkt im Darstellungsbereich, ausgedrückt in Grad. Norden und Süden müssen im Bereich (-90,90) liegen, Osten und Westen müssen im Bereich (-180, 180) Um Begrenzungen auszudrücken, die den 180. Längengrad kreuzen, kann westliche Richtung positiv (z. B. 170) und Ost negativ sein (z. B. -170). Alle Parameter sind erforderlich.
Antworten für Informationen zum Darstellungsbereich
Die Viewport-Antwort gibt an, in welchen Bereichen Bilder vorhanden sind und in welchen Zoomstufen. Eine Antwort zur Darstellung von Informationen zum Darstellungsbereich hat das folgende Format.
{
"copyright": "Map data ©2023",
"maxZoomRects": [
{
"maxZoom": 19,
"north": 90,
"south": -90,
"east": 180,
"west": -180
},
{
"maxZoom": 9,
"north": 90,
"south": -90,
"east": 180,
"west": -180
},
{
"maxZoom": 14,
"north": 84.375,
"south": -84.375,
"east": 180,
"west": -180
}, ...
]
}
Der Antworttext enthält die folgenden Felder.
copyright
- Enthält einen String für die Attribution, den Sie auf der Karte anzeigen lassen müssen, wenn Sie Straßenkarten- und Satellitenkacheln anzeigen. Weitere Informationen finden Sie in der Map Tiles API-Richtlinien.
maxZoomRect
- Enthält ein Array von Begrenzungsrectanglen, die sich mit dem aktuellen Darstellungsbereich überschneiden. Enthält auch die maximale Zoomstufe, die in jedem Rechteck verfügbar ist.
Kachelkoordinatenfunktionen
In den meisten Programmiersprachen sind Tools (einfache Funktionen) verfügbar, mit denen sich Breiten-/Längengradpaare in Kachelkoordinaten bei einer bestimmten Zoomstufe umwandeln lassen.
Betrachten Sie das folgende JavaScript-Codebeispiel, das erstmals eine Konvertierung von einer
latLng
zu einem Punkt und dann von einem Punkt zu Kachelkoordinaten.
var TILE_SIZE = 256;
function fromLatLngToPoint(latLng) {
var mercator = -Math.log(Math.tan((0.25 + latLng.lat() / 360) * Math.PI));
return {
x: TILE_SIZE * (latLng.lng() / 360 + 0.5),
y: TILE_SIZE / 2 * (1 + mercator / Math.PI)
};
}
function fromLatLngToTileCoord(latLng, zoom) {
var point = fromLatLngToPoint(latLng);
var scale = Math.pow(2, zoom);
return {
x: Math.floor(point.x * scale / TILE_SIZE),
y: Math.floor(point.y * scale / TILE_SIZE),
z: zoom
};
}