24 gennaio 2012

[Earth] Integrare Earth, Maps e scripting con PyKML

Tyler Erickson, ingegnere ambientale e ricercatore presso l'Università del Michigan ha scritto un articolo per presentare PyKML, libreria Python per lavorare con il KML di Google, con la speranza di sfruttarne al massimo le potenzialità e incoraggiare i programmatori al suo utilizzo.



Lavorare con Google Earth e Google Maps, dal piazzare un pin a certe coordinate a creare ricostruzioni temporali, per uno sviluppatore significa lavorare con KML, il Keyhole Markup Language, un linguaggio di markup sviluppato nel 2001 dalla società Keyhole Inc. ed acquisito nel 2004 da Big G che ha poi rigirato alla comunità la possibilità di utilizzare questo prodotto. Chi lo conosce sa che non si tratta di un giocattolo e come linguaggio è uno standard internazionale curato dall'Open Geospatial Consortium:  possiamo creare itinerari, selezionare specifiche regioni di spazio, creare tour virtuali e moltissimo altro parlando una sorta di XML che mantiene la stessa leggibilità e razionalità del progenitore, conservandone la potenza espressiva.

Per chi non ha idea di come funzioni la cosa, basta dare un'occhiata alla demo interattiva, con cui iniziare ad entrare nel mood della questione.

Il logo del progetto
Tuttavia le possibilità offerte da questo strumento non sono sempre utilizzate al meglio o si riduce il tutto a  semplice integrazione nelle proprie applicazioni. Per questo, Erickson ha confezionato la libreria PyKML che si propone come il modo per lavorare su Earth e Maps, fondendo la funzionalità di KML con la potenza di Python, potenza che tutti coloro i quali hanno utilizzato ben conoscono.

L'idea è veramente notevole: se da un lato avevamo prevalentemente libkml, la libreria C++ fornitaci da Google, ora abbiamo un pacchetto come PyKML che unisce KML, la leggibilità e la semplicità del Python e le librerie lxml, da anni punto di riferimento per chi deve mettere le mani in pasta con XML (e ovviamente HTML) in questo ambiente di sviluppo.

Se KML (e lo scripting per Earth e Maps) è un modo nuovo per comunicare, sviluppare e creare, PyKML offre una maniera ancora più amichevole per farlo: l'installazione è identica a quella di qualsiasi altro pacchetto Python - grazie al Python Package Index - e richiede come dipendenze unicamente libxml, come detto; dopodichè la parola spetta solo al programmatore.

Sul sito del progetto è presente una buona documentazione e un tutorial per chi vuole iniziare subito a lavorare, oltre a una serie di snippets e progetti d'esempio come quello per il tracciamento delle effemeridi solari trovandosi a Stonehenge, di cui potete vedere il risultato nell'immagine.

Effemeridi del Sole calcolate da Stonehenge con PyKML
Dulcis in fundo, le possibilità che ci offrono Earth e il suo scripting vengono bene esemplificate nel video seguente: non tanto per il contenuto (una breve presentazione di KML e PyKML), quanto per l'utilizzo fatto di Earth grazie a PyKML, utilizzato come una sorta di presentazione dinamica che sarebbe un ottimo punto di partenza per molti keynote grazie alla quantità di dati e informazioni che si possono racchiudere in una applicazione del genere, grazie all'uso mirato di timing, mappe e tour virtuali.


Via | Google Geo Developers

Nessun commento:

Posta un commento