2D-Kacheln – Übersicht

Beispiel für eine RoadmapKartenkacheln sind einfach eine Unterteilung der Welt in ein indexiertes Raster. Sie können damit Kartendaten effizient und dynamisch in verschiedenen kartografischen Maßstäben abrufen und verwenden. Die Map Tiles API bietet Zugriff auf mehrere thematische Geodatensätze, darunter von Google kuratierte:

  • Bildkacheln für Straßenkarten, die auf topografischen Vektordaten mit dem kartografischen Stil von Google basieren.

  • Orthofotografien, die sowohl von Satelliten als auch von Bordkameras aufgenommen wurden und Bilder der Erde von oben (Nadir) liefern.

  • Höhenschattenkarten mit Konturen

2D-Kartenkacheln sind alle georeferenziert und zueinander ausgerichtet. Sie werden basierend auf der geografischen Ausdehnung des Darstellungsbereichs und der Zoomstufe ausgewählt. Die Zoomstufen reichen von null (die ganze Welt) bis 22 (Straßen und Blöcke).

Kartenthemen

Sie können Kartenkacheln für die folgenden Kartenthemen abrufen.

Kartendesign Beschreibung
Roadmap Straßen, Gebäude, Sehenswürdigkeiten und politische Grenzen
Satellit Fotos aus dem Weltraum
Gelände Eine Höhenkarte mit natürlichen Elementen wie Vegetation

Wenn Sie Kartenkacheln von der Map Tiles API anfordern möchten, müssen Sie zuerst ein Sitzungstoken anfordern. Das Sitzungstoken überwacht den aktuellen Status Ihrer Karte und Ihres Darstellungsbereichs. Wenn Sie das Sitzungstoken einrichten, müssen Sie den Wert für mapType so festlegen, dass er dem gewünschten Kartendesign entspricht. Anschließend müssen Sie das Sitzungstoken in jede Anfrage an die Map Tiles API aufnehmen.

Anfragen zu Informationen zum Darstellungsbereich

Der Darstellungsbereich definiert die Größe des Felds, in dem die Weltszene dargestellt wird. Anfragen zu Darstellungsbereichsinformationen geben Details zu den Kartenkacheln zurück, aus denen der aktuelle Darstellungsbereich besteht. Sie fordern Informationen zum Darstellungsbereich an, damit Sie keine Bilder in Zoomstufen anfordern, die nicht existieren.

So sind beispielsweise für die meisten Städte Bilder in der Zoomstufe 22 verfügbar, aber nicht für den Ozean, da dort nur unkenntliche blaue Quadrate zu sehen wären.

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
Die nördlichsten, südlichsten, östlichsten und westlichsten Punkte im Darstellungsbereich, ausgedrückt in Grad. „Nord“ und „Süd“ müssen im Bereich (-90,90) liegen, „Osten“ und „Westen“ im Bereich (-180, 180). Wenn Grenzen den Antimeridian kreuzen, kann „West“ positiv (z. B. 170) und „Ost“ negativ (z. B. -170) sein. Alle Parameter sind erforderlich.

Antworten zu Viewport-Informationen

Die Viewport-Antwort gibt an, in welchen Bereichen Bilder vorhanden sind und in welchen Zoomstufen. Eine Antwort mit 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 Quellenangaben-String, der auf Ihrer Karte angezeigt werden muss, wenn Sie Straßenkarten- und Satellitenkacheln einblenden. Weitere Informationen finden Sie in den Richtlinien für die Map Tiles API.
maxZoomRect
Enthält ein Array von Begrenzungsrectanglen, die sich mit dem aktuellen Darstellungsbereich überschneiden. Enthält auch die maximale Zoomstufe, die innerhalb jedes Rechtecks verfügbar ist.

Funktionen für Kachelkoordinaten

In den meisten Programmiersprachen sind Tools (einfache Funktionen) verfügbar, mit denen sich Breiten-/Längengradpaare in Kachelkoordinaten bei einer bestimmten Zoomstufe umwandeln lassen. Im folgenden JavaScript-Codebeispiel werden zuerst latLng in einen Punkt und dann ein Punkt in Kachelkoordinaten umgewandelt.

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
  };
}