Come funziona Google Earth

Come funziona Google Earth

Google Earth inizia con la fotografia - moltissimo. Google mescola le immagini satellitari scattate dai suoi partner con scatti aerei più convenzionali e le lavora in un'enorme "trama virtuale" che copre il globo. La fotografia utilizzata in questo "strato di base" varia.Le risoluzioni raggiungeranno fino a 0.15 m per pixel nelle aree più dettagliate. L'Inghilterra ora è giù a 0.5 m per pixel, ma l'Antartide viene catturata con un decimo di quella fedeltà.

Le immagini vengono regolarmente aggiornate, poiché nuovi fornitori o satelliti vengono online, ma può essere uno o tre anni prima che un'immagine venga elaborata e aggiunta al livello base. La parte intelligente è come queste immagini sono mappate sul globo virtuale sul tuo PC. Mappare la terra non è una piccola impresa. Secondo i calcoli di uno degli ingegneri che ha costruito Google Earth, se hai immagazzinato solo un pixel di dati di colore per ogni km quadrato della superficie terrestre, finiresti ancora con un 2.Immagine da 4 GB che misura 40.000 x 20.000 pixel, e questo sarebbe in grado di risolvere solo 2 km di larghezza. Nessuna scheda PC o grafica potrebbe far fronte a qualcosa di queste dimensioni e, quando si tiene presente che Google Earth ha bisogno per risolvere le funzionalità di meno di un metro, inizi a comprendere la portata della memoria, dello streaming ed elaborazione.

Allora come gestisce Google Earth? Il software prende la trama del livello di base multi-kerabyte gigante e utilizza una funzione derivata dalla mappatura MIP per trasmettere in streaming solo gli elementi più rilevanti sul tuo PC. La mappatura MIP è nata nei primi giorni della grafica 3D come modo per salvare la larghezza di banda e l'elaborazione del potere durante il processo di rendering in tempo reale. Quando vedi una superficie mappata da MIP da vicino, vedi la trama in tutta la sua gloria ad alta risoluzione. Tuttavia, poiché quella superficie si ritira in distanza, il processo scambia la trama per un minor numero di varianti dettagliate, salvando la scheda grafica dal disegno di una trama che non vedresti comunque correttamente.

Google Earth fa qualcosa di simile, usando una pila di mappe MIP che rappresenta la superficie della Terra vista da diverse distanze e disegnando solo una colonna stretta di questo stack in qualsiasi momento. Intorno al punto focale della finestra, si ottiene la trama della risoluzione più alta quando si è ingrandito, ma al di fuori di quel punto focale usa in modo intelligente le mappe MIP a bassa risoluzione in modo da bilanciare la qualità dell'immagine e le prestazioni. Man mano che il punto di vista si sposta attraverso il pianeta, l'algoritmo capisce dove hai bisogno delle più grandi trame virtuali e le pagine dal server al disco rigido per memoria di sistema per tramare la memoria. Ciò garantisce che solo i livelli di dettaglio più utili vengano inviati alla scheda grafica in qualsiasi momento.

Mentre ciò sta accadendo, Google Earth si sovrappone alla grafica vettoriale, al testo e alla grafica bitmap contenuta nei vari livelli di dati. Queste sovrapposizioni sono controllate da KML, una variante di XML con la stessa struttura basata su tag, elementi nidificati e attributi. KML può specificare icone ed etichette, posizioni e persino punti di vista e può dire all'app Google Earth di sovrapporre un'immagine, recuperare i dati da un database online o una pagina Web o visualizzare un oggetto 3D strutturato. Queste funzionalità consentono a Google di integrare i dati dai propri database di ricerca, ma consentono anche a terzi di lavorare con i propri database o contenuti online. Poiché KML non è un grande salto per coloro che lavoravano con XML, consente anche agli utenti avanzati di utilizzare Google Earth come base per i propri sistemi di informazione geografica, app o mashup. Vedi http: // terra.Google.com/galleria/indice.HTML per alcuni esempi.