18 giugno, 2007 | di

Leggo su OSSblog.it di un nuovo client GIS multipiattaforma basato sulle librerie GTK# e mono: Appomattox. Oltre ad essere un client è anche un framework per sviluppare client GIS personalizzati. Ecco cosa si legge sul sito ufficiale:

Appomattox is both a library and an application. As a library, it provides a set of easy to use mapping components for desktop applications (Check out our tutorials for more details). Built upon these libraries is the application called WorkBench. WorkBench is currently a spatial data viewer with support for the following data sources:

  • Shapefiles
  • Raster data (jpeg, gif, tiff, bitmap, and png)
  • PostGIS

The goal of Appomattox is to provide an elegant and intuitive user interface for mapping and Geographic Information Systems (GIS) without sacrificing power and functionality.

9 giugno, 2007 | di

I gioielli più preziosi spesso stanno nascosti dentro una scatola di latta, sotto un paio di calze, nell’angolo del cassetto del mobile vecchio della nonna.

Non avrei (forse) mai scritto il tutorial che sto per scrivere, se non fossi “caduto” per caso in questo sito, un forum italiano dedicato al mondo delle mountain bike. Non ricordo esattamente come ci sia finito, probabilmente mentre facevo ricerche su qualcosa di collegato ad Atlante Italiano (il Portale Cartografico Nazionale). Il sito del forum di cui sopra è ovviamente in qualche modo legato al mondo dei GIS – oggi i ciclisti usano spesso GPS e cartine – ma non mi sarei mai aspettato di trovare un tutorial su come utilizzare gdal_translate in batch da riga di comando. Ma andiamo al tutorial.

Immaginate di avere una cartella con decine di file GeoTiff (o anche delle orribili coppie .tif/.tfw) , ed di volere convertire in batch (ovvero una conversione in blocco di tutti questi file) in un formato raster GIS compresso come il jpg2000 o l’ECW. Il cuore del processo sarà per l’appunto gdal_translate, un’utility che si trova in FWTools, e il cervello saranno i “cicli for” a partire dal prompt dei comandi.

Il funzionamento di gdal_translate è molto semplice. Immaginiamo di voler convertire un file GeoTiff in formato ECW; questi i passi da seguire:

  • aprite la shell di FWTools (si trova in Avvio>Tutti i Programmi>FWTools 1.x.x)
  • scrivete un comando di questo tipo
>gdal_translate -of ECW c:\tanto\tif\topografica1.tif  c:\tanto\ecw\topografica1.ecw

Come vedete è un comando potente e di semplice utilizzo:

  1. prima il nome del comando (gdal_translate)
  2. poi bisogna fissare il formato di output con “-of” (output format)
  3. poi il nome del file di input (metto le virgolette per evitare di avere problemi con nomi di cartelle e file con spazi)
  4. ed in fine il nome del file di output (come sopra)

In pochi secondi avrete così convertito il vostro singolo file GeoTiff in formato ECW, mantenendo inalterate le informazioni geografiche. Lo potrete verificare con il comando gdalinfo.

Come faccio a convertirne ad esempio 40 senza scrivere 40 volte il comando di cui sopra? Mi viene in aiuto un “classico” ciclo for che eseguirò da riga di comando.

Immaginiamo di avere creato due cartelle, una con i file di input (C:\tanto\tif\) ed un’altra per i file di output (C:\tanto\ecw\). Il comando per convertire in solo colpo le vostre 40 immagini GeoTiff in formato ECW sarà il seguente:

>for %i in ("c:\tanto\tif\*.tif") do gdal_translate -of ECW "%i" "c:\tanto\ecw\%~ni.ecw"

Anche questo comando lo lancerete dalla shell di FWTools. Anche questo è un comando semplice, ma richiede delle spiegazioni. Il comando di sopra tradotto in lingua italiana, potrebbe suonare così: “per (for) ogni file (%i) tif (*.tif) contenuto nella cartella c:\tanto\tif\, esegui (do) gdal_translate, e scegli ECW come formato di output (-of ECW)”. Ecco un esploso dei comandi:

  1. for (dichiarate l’inizio del ciclo)
  2. %i (è una variabile che creerete grazie al ciclo e conterrà, per ogni ciclo, il percorso completo del file della cartella di input)
  3. (c:\tanto\tif\*.tif) (specificate quale sia la cartella ed il formato di input)
  4. do (è il comando che fa eseguire una determinata operazione)
  5. gdal_translate -of ECW (sapete già cosa vuol dire)
  6. “%i” (il percorso completo del file di input)
  7. c:\tanto\ecw\ (la cartella di output)
  8. %~ni.ecw (solo il nome del file di input senza estensione, seguito dall’estensione di output)

Scritto il comando e dato invio, inizierà il processo di conversione; vi andate a fare un caffé ed al ritorno troverete tutti i file ECW nella cartella di output.

Ma torniamo al forum sulle mountail bike. Il thread che mi ha stimolato e che mi ha fatto capire diverse cose è questo: è composto da molte pagine, e contiene diverse “chicche”. Se ne scoprite qualcuna di interessante, perché non ci scrivete un post e lo pubblichiamo su TANTO. Colgo l’occasione per fare i complimenti agli utenti di questi forum.

Per saperne di più sui “cicli for” nel prompt del dos ecco alcuni link:

Tutte le utility di FWTools, sono opencource e disponibili anche per Linux. Tutto quello di cui abbiamo parlato si può fare anche in Linux, con tutte le possibilità che da in più la riga di comando in questo ambiente. Il mio problema è che non sono tanto bravo con Linux.

Tutti i comandi di sopra possono essere raffinati. Si possono scegliere molte cose oltre al formato di output: le dimensioni di output, il tipo di compressione, l’assegnazione del corretto sistema di coordinate, etc. Per tutte queste opzioni vi rimando alla pagina ufficiale di gdal_translate.

Per convertire in formato jpg2000 basterà scrivere “-of jp2kak”. Potrete fare anche conversioni in senso inverso da ECW a GeoTiff, ed in questo caso “-of Gtiff”.

Buon divertimento!!

24 maggio, 2007 | di

Ne so ancora poco, ma la notizia è molto interessante. Quelli del Metacarta Labs hanno annunciato oggi il rilascio di FeatureServer, un server che consetirà l’archiviazione di punti, linee e poligoni ed anche la loro restituzione in formato KML, JSON, GeoRSS, GML/WFS ed anche HTML.

E’ stato progettato a supporto delle nuove capacità vettoriali di OpenLayers: qui una demo.

21 maggio, 2007 | di

Notepad++ è un eccellente editor di testo opensource, che consiglio a chiunque abbia a che fare con la scrittura di codice. Ne parlo qui, perché può essere utile anche a chi si occupa di cartografia online, ed in particolare a chi scrive i file di configurazione di MapServer (ovvero i file .map).

Ho lavorato in questi giorni su diversi file .map, con altri editor di testo, ma non ero soddisfatto ed avrei voluto usare Notepad++. Questo editor non ha nativamente il syntax highlighting dei file .map, ma per fortuna è molto semplice creare il file di configurazione necessario ad attivare questa funzione. Ho trovato qui la guida per crearlo, ed ho anche creato un video che illustra il risultato ottenuto.

Allego anche il file di configurazione creato. E’ ancora molto incompleto e sarebbe carino completarlo insieme. Qualche idea su come e dove condividere il lavoro?

Per installarlo, se non avete creato altri file di configurazione per altri linguaggi, basterà estrarlo nella cartella “\Dati applicazioni\Notepad++\” presente nel vostro profiloWindows.

__

10 maggio, 2007 | di

Ecco un’altra chicca che vi prego di diffondere: un corso online dal titolo “Open Web Mapping“. E’ molto ben strutturato e copre gran parte degli argomenti propedutici per chi si voglia avvicinare a questo mondo. Lo trovo utile anche per chi voglia raccogliere del materiale per fare didattica. Questo è l’indice del corso:

  • Lesson 0: Orientation
  • Lesson 1: Introduction to Open Web Mapping
  • Lesson 2: Web Map Servers (WMS)
  • Lesson 3: Web Feature Servers (WFS)
  • Lesson 4: Extensible Markup Language (XML)
  • Lesson 5: Advanced Web Map Servers
  • Lesson 6: Geographic Markup Language (GML)
  • Lesson 7: WFS Revisited
  • Lesson 8: Building a Web Mapping Application
  • Lesson 9: Building a Thin Custom Web Mapping Client

Il corso è interamente scaricabile ed io lo sto archiviando con ScrapBook.


TANTO non rappresenta una testata giornalistica ai sensi della legge n. 62 del 7.03.2001, in quanto non viene aggiornato con una precisa e determinata periodicita'. Pertanto, in alcun modo puo' considerarsi un prodotto editoriale.