Panoramica dei riquadri 2D

Sviluppatori dello Spazio economico europeo (SEE)

Esempio di roadmapI Map Tiles sono semplicemente la suddivisione del mondo in una griglia indicizzata. Ti consentono di accedere e utilizzare i dati delle mappe in modo efficiente e dinamicamente a più scale cartografiche. L'API Map Tiles ti dà accesso a più geodataset tematici, tra cui quelli curati da Google:

  • Riquadri immagine della mappa stradale basati su dati topografici vettoriali con lo stile cartografico di Google.

  • Ortofotografia acquisita da fotocamere satellitari e aeree che forniscono immagini della Terra dall'alto (nadir).

  • Mappe di contorno con ombreggiatura.

Tutti i 2D Map Tiles sono georeferenziati e allineati tra loro. Vengono selezionati in base all'estensione geografica dell'area visibile e al livello di zoom. I livelli di zoom vanno da zero (per visualizzare il mondo nella sua interezza) a 22 (per visualizzare strade e isolati).

Temi mappa

Puoi ottenere i riquadri mappa per i seguenti temi mappa.

Tema mappa Descrizione
Mappa stradale Strade, edifici, punti di interesse e confini politici
Satellite Immagini fotografiche scattate dallo spazio
Rilievo Una mappa di contorno che mostra le caratteristiche naturali come la vegetazione

Per richiedere i riquadri mappa dall'API Map Tiles, devi prima richiedere un token di sessione. Il token di sessione tiene traccia dello stato attuale della mappa e dell'area visibile. Quando configuri il token di sessione, devi impostare il valore mapType in modo che corrisponda al tema mappa che vuoi. Dopodiché, devi includere il token di sessione in ogni richiesta all'API Map Tiles.

Richieste di informazioni sull'area visibile

L'area visibile definisce le dimensioni della casella che inquadra la scena del mondo. Le richieste di informazioni sull'area visibile restituiscono dettagli sui riquadri mappa che compongono l'area visibile attuale. Il motivo per cui richiedi informazioni sull'area visibile è per assicurarti di evitare di richiedere immagini a livelli di zoom inesistenti.

Ad esempio, la maggior parte delle città ha immagini al livello di zoom 22, ma non l'oceano, perché finirebbe per mostrare solo quadrati blu senza caratteristiche.

La richiesta dell'area visibile è una richiesta GET HTTPS nel seguente formato.

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"

La richiesta contiene i seguenti campi:

zoom
Il livello di zoom dell'area visibile.
north, south, east, west
I punti più a nord, a sud, a est e a ovest dell'area visibile, espressi in gradi. I valori di nord e sud devono essere compresi nell'intervallo (-90,90), mentre quelli di est e ovest devono essere compresi nell'intervallo (-180, 180). Per esprimere i limiti che attraversano l'antimeridiano, il valore di ovest può essere positivo (ad esempio, 170) e quello di est può essere negativo (ad esempio, -170). Tutti i parametri sono obbligatori.

Risposte alle informazioni sull'area visibile

La risposta dell'area visibile indica le aree che hanno immagini e a quali livelli di zoom. Una risposta alle informazioni sull'area visibile ha il seguente formato.

{
  "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
    }, ...
  ]
}

Il corpo della risposta contiene i seguenti campi.

copyright
Contiene una stringa di attribuzione che devi mostrare sulla mappa quando visualizzi i riquadri della mappa stradale e satellitare. Per ulteriori informazioni, consulta le Norme dell'API Map Tiles.
maxZoomRect
Contiene un array di rettangoli di delimitazione che si sovrappongono all'area visibile attuale. Contiene anche il livello di zoom massimo disponibile all'interno di ogni rettangolo.

Funzioni delle coordinate dei riquadri

Nella maggior parte dei linguaggi di programmazione sono disponibili strumenti (funzioni semplici) per convertire le coppie di latitudine/longitudine in coordinate dei riquadri a un livello di zoom specifico. Considera il seguente esempio di codice JavaScript che prima converte un latLng in un punto e poi un punto in coordinate dei riquadri.

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