|
Dimensione: 2649
Commento:
|
Dimensione: 3801
Commento: tolta guida alla compilazione
|
| Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
| Linea 1: | Linea 1: |
| ## page was renamed from TommasoDiBucchianico/prove1 | |
| Linea 8: | Linea 9: |
| Mapnik è un toolkit (insieme di strumenti) per la realizzazione di mappe a partire da dati vettoriali e raster. E' scritto in C++ e ha Python bindings che supportano uno sviluppo semplice e veloce delle mappe. Mapnik può essere usato sia per lo sviluppo di applicazioni web, accoppiato con altri softwar tipo Open Layer, sia per un uso desktop. | Questa guida contiene le istruzioni necessarie per l'installazione di '''Mapnik''', uno strumento utile alla realizzazione di mappe a partire da dati vettoriali e raster. |
| Linea 10: | Linea 11: |
| = Installazione da Repository (Ubuntu 8.04) = | = Preparativi = |
| Linea 12: | Linea 13: |
| Per Ubuntu 8.04 è presente nei repository Universe il pacchetto python-mapnik che contiene Mapnik 0.4 e può essere comodamente installato tramire apt-get. | Abilitare i [:Repository/Componenti:componenti] '''universe''' e '''multiverse''' dei [:Repository:repository] ufficiali. |
| Linea 14: | Linea 15: |
| {{{ sudo apt-get install python-mapnik }}} Se si volesse installare l'ultima versione (Mapnik 0.5) bisognerà [:AmministrazioneSistema/InstallareProgrammi/DaSorgenti:compilare i sorgenti] (vedi sotto). |
= Installazione da repository = |
| Linea 19: | Linea 17: |
| = Installazione tramite sorgenti (Ubuntu 8.04) = | [:AmministrazioneSistema/InstallareProgrammi:Installare] il pacchetto ''python-mapnik''. |
| Linea 21: | Linea 19: |
| Innanzitutto vanno aggiornati i pacchetti già installati {{{ aptitude update aptitude upgrade |
= Esempio con Mapnik = Di seguito viene mostrato un primo esempio di utilizzo di '''Mapnik'''. 0. Scaricare a [http://mappinghacks.com/data/world_borders.zip questo indirizzo] un dataset vettoriale in formato [http://it.wikipedia.org/wiki/Shapefile ESRI Shapefile], decomprimerlo e salvarlo all'interno della propria '''Home'''. 0. Scrivere uno script in python che punti a questo file ne definisca lo stile e l'estensione geografica. Per fare questo salvare il seguente script all'interno della propria '''Home''' in un file chiamato `mappa.py`. L'estensione geografica dello script rende l'area relativa al mediterraneo. Modificare le coordinate se si desidera rendere un'altra zona geografica, non dimenticando di modificare il percorso allo shapefile: {{{ #!/usr/bin/env python from mapnik import * # Definizione delle dimensioni della mappa # e il sistema di riferimento geografico (latlon WGS84) m = Map(500,300,"+proj=latlong +datum=WGS84") # Colore dello sfondo m.background = Color('steelblue') # Creazione di uno stile s = Style() # Definizione dello stile, possono esserci una o più regole. # Una regola può comprendere un filtro, la definizione di scale minima e massima, # uno o più Symbolizers (PolygonSymbolizer e LineSymbolizer) r=Rule() # Colore di riempimento dei poligoni r.symbols.append(PolygonSymbolizer(Color('#f2eff9'))) # Colore e spessore delle linee di contorno r.symbols.append(LineSymbolizer(Color('rgb(50%,50%,50%)'),0.1)) s.rules.append(r) # Aggiunta dello stile alla mappa e definizione di un nome # da usare nella definizione del livello m.append_style('My Style',s) # Vengono definiti i nomi di uno o più livelli lyr = Layer('world') # Percorso allo shapefile. # Lo shapefile deve essere indicato senza esenzione! lyr.datasource = Shapefile(file='/percorso/ai/dati/world_borders') # Aggiunta dello stile al livello lyr.styles.append('My Style') # Aggiunta del livello della mappa m.layers.append(lyr) # Definizione dell'estensione geografica, le due coppie di coordinate # corrispondono ai due angoli basso-sinistro e alto-destro della mappa bbox = Envelope(Coord(6, 34), Coord(22, 48)) # Ingrandimento all'estensione geografica definita prima m.zoom_to_box(bbox) # Conversione la mappa m nel file italia.png con formato .png render_to_file(m,'italia.png', 'png') |
| Linea 27: | Linea 80: |
| Installazione delle dipendenze richieste tramite [:AmministrazioneSistema/Aptitude:Aptitude]: | |
| Linea 29: | Linea 81: |
| boost dipendenze: {{{ aptitude install binutils cpp-3.3 g++-3.3 gcc-3.3 gcc-3.3-base libboost-dev libboost-filesystem-dev libboost-filesystem1.34.1 libboost-iostreams-dev libboost-iostreams1.34.1 libboost-program-options-dev libboost-program-options1.34.1 libboost-python-dev libboost-python1.34.1 libboost-regex-dev libboost-regex1.34.1 libboost-serialization-dev libboost-serialization1.34.1 libboost-thread-dev libboost-thread1.34.1 libicu-dev libicu38 libstdc++5 libstdc++5-3.3-dev python2.5-dev |
0. Una volta salvato il file bisogna impostare i [:AmministrazioneSistema/PermessiFile:permessi] d'esecuzione, digitando all'interno di una finestra di terminale il seguente comando:{{{ chmod +x ~/mappa.py }}} 0. Avviare lo script lanciando il seguente comando all'interno di una finestra di terminale:{{{ ./mappa.py |
| Linea 34: | Linea 88: |
| Altre dipendenze richieste {{{ sudo aptitude install libfreetype6 libfreetype6-dev libjpeg62 libjpeg62-dev libltdl3 libltdl3-dev libpng12-0 libpng12-dev libtiff4 libtiff4-dev libtiffxx0c2 python-imaging python-imaging-dbg proj }}} Cairo Renderer dipendenze (opzionale) {{{ sudo #aptitude install libcairo2 libcairo2-dev python-cairo python-cairo-dev libcairomm-1.0-1 libcairomm-1.0-dev libglib2.0-0 libpixman-1-0 libpixman-1-dev libpthread-stubs0 libpthread-stubs0-dev ttf-dejavu ttf-dejavu-core ttf-dejavu-extra }}} Installazione di altri strumenti GIS (opzionale. Vedi anche [:UbuntuGis:UbuntuGis] {{{ sudo aptitude install libgdal-dev python2.5-gdal postgresql-8.3-postgis postgresql-8.3 postgresql-server-dev-8.3 postgresql-contrib-8.3 }}} 0. Passo 1 0. Passo 2 0. Passo 3 == Titolo 2 == = Mapnik = Testo... 0. Passo 1 0. Passo 2 0. Passo 3 == Titolo 2 == Testo... |
0. Il risultato dovrebbe essere il file `italia.png` che rappresenta la mappa. |
| Linea 67: | Linea 92: |
| * Risorsa 1 * Risorsa 2 ## da questo punto in poi non modificare! |
* [http://trac.mapnik.org/wiki/UbuntuInstallation/ Documento originale] * [http://mapnik.org/documentation/ Documentazione ufficiale] * [http://trac.mapnik.org/wiki/ExampleCode Esempi di codice] * [:UbuntuGis:Guida all'installazione di Ubuntu GIS] * [http://trac.mapnik.org/wiki/InstallationTroubleshooting/ Risoluzione dei problemi in fase di compilazione] |
| Linea 72: | Linea 98: |
| CategoryNuoviDocumenti | CategoryHomepage |
Introduzione
Questa guida contiene le istruzioni necessarie per l'installazione di Mapnik, uno strumento utile alla realizzazione di mappe a partire da dati vettoriali e raster.
Preparativi
Abilitare i [:Repository/Componenti:componenti] universe e multiverse dei [:Repository:repository] ufficiali.
Installazione da repository
[:AmministrazioneSistema/InstallareProgrammi:Installare] il pacchetto python-mapnik.
Esempio con Mapnik
Di seguito viene mostrato un primo esempio di utilizzo di Mapnik.
Scaricare a [http://mappinghacks.com/data/world_borders.zip questo indirizzo] un dataset vettoriale in formato [http://it.wikipedia.org/wiki/Shapefile ESRI Shapefile], decomprimerlo e salvarlo all'interno della propria Home.
Scrivere uno script in python che punti a questo file ne definisca lo stile e l'estensione geografica. Per fare questo salvare il seguente script all'interno della propria Home in un file chiamato mappa.py. L'estensione geografica dello script rende l'area relativa al mediterraneo. Modificare le coordinate se si desidera rendere un'altra zona geografica, non dimenticando di modificare il percorso allo shapefile:
from mapnik import * # Definizione delle dimensioni della mappa # e il sistema di riferimento geografico (latlon WGS84) m = Map(500,300,"+proj=latlong +datum=WGS84") # Colore dello sfondo m.background = Color('steelblue') # Creazione di uno stile s = Style() # Definizione dello stile, possono esserci una o più regole. # Una regola può comprendere un filtro, la definizione di scale minima e massima, # uno o più Symbolizers (PolygonSymbolizer e LineSymbolizer) r=Rule() # Colore di riempimento dei poligoni r.symbols.append(PolygonSymbolizer(Color('#f2eff9'))) # Colore e spessore delle linee di contorno r.symbols.append(LineSymbolizer(Color('rgb(50%,50%,50%)'),0.1)) s.rules.append(r) # Aggiunta dello stile alla mappa e definizione di un nome # da usare nella definizione del livello m.append_style('My Style',s) # Vengono definiti i nomi di uno o più livelli lyr = Layer('world') # Percorso allo shapefile. # Lo shapefile deve essere indicato senza esenzione! lyr.datasource = Shapefile(file='/percorso/ai/dati/world_borders') # Aggiunta dello stile al livello lyr.styles.append('My Style') # Aggiunta del livello della mappa m.layers.append(lyr) # Definizione dell'estensione geografica, le due coppie di coordinate # corrispondono ai due angoli basso-sinistro e alto-destro della mappa bbox = Envelope(Coord(6, 34), Coord(22, 48)) # Ingrandimento all'estensione geografica definita prima m.zoom_to_box(bbox) # Conversione la mappa m nel file italia.png con formato .png render_to_file(m,'italia.png', 'png')Una volta salvato il file bisogna impostare i [:AmministrazioneSistema/PermessiFile:permessi] d'esecuzione, digitando all'interno di una finestra di terminale il seguente comando:
chmod +x ~/mappa.py
Avviare lo script lanciando il seguente comando all'interno di una finestra di terminale:
./mappa.py
Il risultato dovrebbe essere il file italia.png che rappresenta la mappa.
Ulteriori risorse
[http://trac.mapnik.org/wiki/UbuntuInstallation/ Documento originale]
[http://mapnik.org/documentation/ Documentazione ufficiale]
[http://trac.mapnik.org/wiki/ExampleCode Esempi di codice]
[:UbuntuGis:Guida all'installazione di Ubuntu GIS]
[http://trac.mapnik.org/wiki/InstallationTroubleshooting/ Risoluzione dei problemi in fase di compilazione]
