Utente:Viridovix/GM

Da Uno Sguardo nel Buio.

Coordinate Google Map

Come è noto GM richiede diversi sistemi di coordinate per svolgere il proprio compito, in particolare:

  • (Lat, Lng) le coordinate geografiche propriamente dette: viene utilizzata la proiezione di Mercatore per rappresentare su un piano il globo terrestre. Le coordinate vengono rappresentate in gradi decimali, ed oscillano tra -180 e +180 per la longitudine e -85 e +85 circa per la latitudine. Questa scelta consente di rappresentare il planisfero in un unica immagine quadrata (tile) di 256 pixel di lato.
  • (Px, Py) le coordinate interne di una tile in pixel: servono per identificare un pixel all'interno di una tile e poiché la tile tipica di GM è di 256 pixel di lato, queste coordinate oscillano tra 0 e 256 pixel. L'orientamento è quello classico delle viewport della programmazione con l'origine in alto a sinistra, quindi la x va da sinistra a destra e la y dall'alto verso il basso.
  • (Tx, Ty, Tz) le coordinate delle tile: tutte le tile sono numerate, per un livello di zoom assegnato, da una coppia di interi che indicano la posizione della tile nel layer. Al solito, le coordinate sono con l'angolo in alto a sinistra e le x da sinistra a destra e le y dall'alto verso il basso. Una tile è quindi identificata esattamente da tre interi: x, y, zoom. A livello di zoom pari a zero, tutto il mondo è disegnato su una unica tile di 256x256 pixel, numerata come 0,0. Al livello di zoom successivo, le tile diventano 4 e sono identificate dalle 4 coppie (0,0), (0,1), (1,0) e (1,1).
  • (Wx, Wy, Wz) le coordinate mondo: si tratta sostanzialmente delle coordinate in pixel che identificano ciascun punto grafico sulla mappa. Seguono il consueto orientamento con il vertice in alto a sinistra. I valori massimi che le coordinate x,y possono assumere dipendono, ancora una volta, dal livello di zoom. In particolare, per il livello zero i valori ammissibili vanno da 0 a 256 (a livello zero le coordinate mondo coincidono con le coordinate interne dell'unica tile), per il livello uno i valori ammissibili vanno da 0 a 512 (ci sono 4 tile). In buona sostanza, per un livello di zoom n, i valori ammissibili oscillano tra 0 e 256*2^n.

Le coordinate interne di una tile e quelle delle tile si rendono necessarie perché non è possibile per un computer lavorare con i numeri enormi previsti dai livelli di zoom più elevati: di seguito viene illustrato come utilizzare questi sistemi di coordinate per passare da una qualsiasi coppia di coordinate geografiche al corrispondente pixel. Le relazioni tra coordinate sono gestite da opportune trasformazioni, in particolare:

  • la trasformazione tra coordinate mondo e coordinate geografiche è assicurata dalla proiezione di Mercatore.
  • dalle coordinate mondo è possibile desumere la tile in cui si trova il punto (pixel) e la posizione del punto all'interno della tile. A livello teorico, usando per le coordinate la notazione illustrata sopra, valgono le seguenti relazioni:
Ti = int(Wi/256) (ad un determinato livello di zoom)
Pi = Wi - 256 * Ti (ad un determinato livello di zoom)

Strumenti personali
Translate
Facebook