Tutorial da file pdf a shapefile

Dopo il comunicato stampa sul sito del Comune di Palermo   Tram – Entra nel vivo la fase di progettazione per le nuove linee verso ZEN-Mondello, Bonagia e lungo la costa con Ciro Spataro abbiamo pensato di fare una delle nostre mappe…ovvero la mappa del ferro come l’ha chiamata Ciro.

Per realizzare la mappa c’è quasi tutto, occorrono solo le nuove linee del tram in formato vettoriale.

Gran parte dei vettori, (linee tram esistenti, passante ferroviario, etc etc) sono reperibili su OpenStreetMap, facili da estrarre con overpass-turbo.eu, qui un articolo molto utile su geomappando  o un interessante video di GISTIPSTER.

In alternativa si può scaricare l’intera cartografia di Palermo, o qualsiasi altra città, da Estratti OpenStreetMap,

Per ricavare i vettoriali delle nuove linee del tram abbiamo pensato di usare il file pdf allegato al comunicato stampa Tavola 14 – planimetria riassuntiva scala 25.000 dell’intero sistema di trasporti su rotaia.

La stessa e tutte le altre tavole del progetto si trovano sul sito del Comune di Palermo, (qui l’intero progetto in file pdf del trasporto pubblico di massa)

Screenshot del file pdf Tavola 14 – planimetria riassuntiva scala 25.000

L’idea è semplice…

  1. Convertire il file pdf in dxf
  2. Georeferenziare il nuovo file ottenuto con Qgis
  3. Verificare il risultato della georeferenziazione e correggere manualmente eventuali imperfezioni.
  4. Esportare i nuovi file in versione geojson per umap

Conversione da PDF in DXF

Per la conversione da pdf a dwg/dxf in rete si trovano tanti programmi, open source e non.

Dopo qualche ricerca e qualche test, abbiamo scelto di usare progeCAD 2017 Professional in versione di prova gratuita completa per 30 giorni. Gli stessi risultati si possono ottenere con DraftSight o con il più semplice PDF to DWG Converter.

Qui trovate un breve video che spiega come caricare un file pdf in progeCAD

Qui un video che spiega come caricare un file pdf in DraftSigh

Seguendo il video dimostrativo di progeCAD 2017 Professional si intuisce facilmente come caricare un file pdf

Dopo qualche minuto di elaborazione il pdf è stato convertito in dwg.

L’importazione è riuscita, adesso non resta che pulire il file e lasciare solo quello che ci interessa.
Come si può notare dalle immagini ad ogni colore presente nel file pdf corrisponde un layer nel dwg.

A questo punto disattiviamo/eliminiamo tutto ciò che non ci interessa e facciamo un po di ordine.

Rinominiamo i layer, così li riconosciamo subito.

Con il comando elimina, presente nel menù File → Utilità → Elimina

Eliminiamo tutto il superfluo, questa utility, ci consente di tenere il file sempre pulito e leggero.

Una volta ripulito il file, è necessario posizionare le linee sulle coordinate di Palermo, in modo da non complicarci troppo il lavoro con Qgis.

Per far ciò, abbiamo inserito come riferimento esterno, un file georeferenziato e convertito in dxf della base cartografica scaricata da OpenStreetMap.

Dal menù Inserisci → riferimenti esterni, carichiamo una parte della cartografia OSM, (dallo screenshot si nota poco, ma è quel puntino all’interno del cerchio rosso)

Come si può notare le linee importate dal file pdf, sono fuori scala e posizionate a caso.

Utilizzando il comando Allinea e con un po di pazienza riusciamo, traslare le nuove linee del tram sulle coordinate di Palermo.

Adesso le linee, grossolanamente, sono sulle coordinate di Palermo, affineremo la georeferenziazione con Qgis.

Per ottenere un buon risultato finale, è opportuno georeferenziare separatamente le 4 linee che ci interessano.

Di conseguenza salviamo/esportiamo ogni linee in un nuovo file dfx.

Ecco un file dwg con la singola tratta c – d, grossolanamente posizionato sulle coordinate di Palermo.

La georeferenziazione

Per questa seconda fase è necessario un software gis, nel nostro esempio usiamo Qgis e il plugin Plugin Vector Bender spiegato in questo video da Salvatore Fiandaca

Per prima cosa importiamo il file dxf in qgis, per farlo abbiamo diversi metodi, usare i plugin  dxf2shp o dxf import/convert, o nel caso di file dfx con molte più informazioni si può usare Spatialite, tutto spiegato sempre da Salvatore Fiandaca nel suo blog pigrecoinfinito

Dove aver caricato il file dxf, salviamo lo stesso in formato shp, perchè sul formato dfx non possiamo fare modifiche.

Attiviamo il plugin Vector Bender ed iniziamo ad inserire punti per la georeferenziazione.

Questo è il risultato di un primo test, più punti inseriamo e più precisi siamo, migliore sarà il risultato finale.

…e dopo qualche  tentativo e dopo alcune correzioni manuali la linea “sembra” essere al suo posto. Salviamo il lavoro appena fatto in un nuovo file shp.

Sicuramente non è precisa come l’originale, ma rende l’idea.

Per completare il lavoro, basta ripetere la stessa procedura per le altre 3 linee rimanenti

Qualcuno si starà chiedendo… Ma non era più semplice ridisegnare le linee…?
Forse si, ma il tempo e la pazienza non mi mancano e soprattutto mi piace sperimentare, magari si può usare questo metodo con file pdf molto più complessi, ed in quel caso si risparmia un bel po di tempo…

Osservare il cambiamento di una città grazie alla cartografia: il caso di Palermo

Dopo aver letto l’articolo di @napo mappa di Trento 1915 – da un libro di Cesare Battisti, ne sono rimasto affascinato, sia per il gran lavoro fatto dalla biblioteca comunale di Trento, nel digitalizzare il contenuto del libro e renderlo di dominio pubblico e sia per la parte tecnica e dall’analisi, che si può fare agevolmente, mettendo a confronto una carta storica ed una di oggi.

Brevemente, con il plugin leaflet-tileoverlay-mask, si ottiene un effetto “spot” sulle cartografie, che ci permette di mettere a confronto, dinamicamente e istantaneamente, una carta storica con lo stato attuale.

La realizzazione tecnica, è più semplice di quello che si pensa

Subito ho pensato come poter usare questa tecnica sulle cartografie storiche e non di Palermo.

Il primo test l’ho fatto, con la cartografia del nuovo schema di massima del PRG di Palermo presentato dal Comune nel 2015 e georeferenziata da @cirospat, con mapwarper.net 

constatando, in prima persona, la bontà del lavoro fatto da @napo.

In questo caso ho semplicemente sostituito la base cartografica “L.tileLayer.mask” di riferimento, nel file di esempio fornito con plugin leaflet-tileoverlay-mask”.

Inserendo la nuova mappa tiles e centrando la mappa sulle coordinate di Palermo, il lavoro è fatto.

Nuova base tiles

var prg = L.tileLayer.mask(‘http://mapwarper.net/maps/tile/19437/{z}/{x}/{y}.png

Zoom e coordinate di base

var map = L.map(‘map’, {attributionControl:true}).setView([38.11127,13.3534422], 14);

Usando la versione originale del plugin leaflet-tileoverlay-mask, ho notato un limite, ovvero, l’impossibilità di utilizzare più basi cartografiche, per fare l’analisi.

Con il contributo fondamentale di @piersoft, sono riuscito a superare l’ostacolo.

Dopo questo piccolo test, mi sono chiesto, come poter sfruttare al meglio la tecnica.

Confrontandomi con @aborruso e @cirospat, del gruppo di opendatasicilia, sull’uso della tileoverlay-mask e conoscendo il Portale Cartografico, realizzato dalla Sispi spa (società in house del comune di Palermo), subito abbiamo pensato di utilizzarla, con le cartografie storiche. Rese disponibili dall’ottimo lavoro di scansione e georeferenziazione del geom. Liborio Plazza, dipendente del Comune di Palermo e  dalla Sispi.

L’obiettivo era chiaro, costruire un atlante, dove poter mettere a confronto, velocemente, le carte storiche con la città dei nostri giorni.

Scaricate e georeferenziate le cartografie storiche, da @aborruso e @cirospat, a me, non è rimasto altro da fare, che organizzare il materiale e dargli una veste grafica user friendly.

Spero di esserci riuscito!

L’URL è questo http://siciliahub.github.io/mappe/atlante_carto_pa/index.html

Gli strumenti che abbiamo utilizzato per il il progetto dell’atlante sono:

  1. Dati da un server WMS: scaricarli, riproiettarli, comprimerli, tassellarli e piramidarli da riga di comando, di @aborruso;
  2. Leaflet, per creare l’interfaccia di web mapping;
  3. Leaflet-hash, per generare URL che contengono livello di zoom e posizione corrente;
  4. Leaflet-tileoverlay-mask, per la sovrapposizione delle tile con effetto svg maschera, un effetto “spot“ che ci permette di vedere come era la città al tempo in un particolare punto;
  5. Sidebar-v2, per creare sidebar a scomparsa;
  6. Leaflet.MousePosition, è un semplice controllo della posizione del mouse. Esso mostra le coordinate geografiche del puntatore del mouse, mentre viene spostato sulla mappa;
  7. Leaflet-graphicscale, è un semplice barra di scala con effetto animato al cambio dello zoom;
  8. Map Warper, è uno strumento open source per georeferenziare immagini, nato grazie al contributo del progetto spacetime della Biblioteca Comunale di New York, sviluppato, ospitato e mantenuto da Tim Waters;
  9. Btns, è un piccolo modulo CSS che permette di inserire pulsanti reattivi.
  10. Leaflet.Basemaps, consente di creare un controllo dell’interfaccia utente per la scelta della mappa di base utilizzato sulla mappa.

Il codice script usato per il progetto è liberamente scaricabile dalla pagine html dell’atlante. Basta sostituire i relativi L.tileLayer.mask e il setView([38.11127,13.3534422] per adattarla alle proprie esigenze.

Gli sfondi della mappa sulla quale visualizzare le cartografie storiche sono vari Openstreetmap, Google Road e Satellite, Esri Standard e Satellite.

Alcuni esempi

Il bello di questa mappa è scoprire come questa città sia cambiata e ognuno troverà degli esempi diversi nei luoghi che conosce meglio.

Villa Trabia

La via Piersanti Mattarella, già “Via Villa Trabia” si estendeva da via Notarbartolo a poco dopo l’ingresso del CEI (l’istituto Gonzaga).

Un “fiume” limitrofo a Villa Sperlinga

Il “Passo di Rigano” che costeggia Villa Sperlinga è un colpo d’occhio.

Il mare era “più vicino”

Era subito dopo Porta Felice e probabilmente se ne sentiva molto più forte la presenza.

……. e ora scopri anche tu i cambiamenti nel tuo quartiere, …..buon viaggio nella storia cartografica della città di Palermo

OPENDATAFEST 2017, Caltanissetta 2-4 giugno 2017, #ODFest17

#ODFest17

Dal 2 al 4 giugno 2017 a Caltanissetta si terranno iniziative per conoscere il mondo dei dati e per stimolare la conoscenza aperta, incontrare persone che se ne interessano, condividere esperienze e costruire prototipi insieme. Quest’anno si tratta di un evento organizzato dalle comunità Open Data Sicilia e Spaghetti Open Data.

Un portale informativo è già stato redatto http://opendatafest.it/ e contiene le informazioni utili per coloro che intendono partecipare, non solo come uditori, ma anche come relatori.

Questa mappa illustra i siti dove si terranno gli eventi, i punti di riferimento del trasporto pubblico locale e i siti per il pernottamento.

Ecco alcuni alcuni temi che saranno approfonditi al raduno (ma non sono necessariamente solo questi):

  • pratiche e metodi di trasparenza;
  • i dati della amministrazione aperta;
  • la condivisione dei dati aperti e il loro riuso;
  • i dati aperti per comprendere meglio la realtà e come supporto alle decisioni;
  • fare impresa con i dati aperti (casi di business basati sugli Open Data);
  • l’impatto sulla società dei dati aperti;
  • il trattamento dei dati, l’analisi e la loro visualizzazione;
  • metadati, ontologie e approcci semantici;
  • raccontare il territorio a partire dai dati;
  • strumenti hardware e software per la raccolta e la condivisione di dati aperti.

I tre giorni avranno questa struttura:

  1. venerdì 2 giugno: la giornata è divisa in due parti:
    • mattina: terremo una conferenza in cui aggiornarci a vicenda sulle cose più importanti che sono successe nell’ultimo anno nel mondo degli Open Data;
    • pomeriggio: ci saranno delle sessioni parallele sui temi che arriveranno dalle proposte che faranno i partecipanti stessi, come per i BarCamp (per chi li conoscesse).
  2. sabato 3 giugno faremo un Civic Hackathon: produrremo insieme qualcosa di concreto. A differenza degli hackathon “normali”, il civic hackathon non si concentra solo sulla produzione di software, ma anche su analisi di leggi e normative o azioni di monitoraggio civico. Qualunque persona interessata al tema può esserne protagonista, anche se non sa programmare. Anche in questo caso, l’ambito e le possibili sfide da affrontare saranno frutto di quelle proposte che arriveranno dai partecipanti stessi;
  3. domenica 4 giugno faremo una giornata di formazione per la comunità. Sarà accessibile anche a principianti assoluti: il suo obiettivo è rendere tutti in grado di “fare delle cose con i dati” – una cosa molto pratica, insomma. Come per il sabato, anche in questo caso le proposte emergono direttamente dal basso.

E’ forse l’iniziativa civica sui dati aperti più interessante d’Italia del 2017, perché realizzata da persone che dentro o fuori le pubbliche amministrazioni sono accomunate dalla passione e consapevolezza dell’importanza della conoscenza condivisa.

Partecipa all’OPENDATAFEST 2017

Se partecipi puoi anche farlo sapere aggiornando la cover del tuo profilo Twitter o di Facebook:


(foto in alto di Lillo Miccichè)

Open data day 4 marzo 2017 a Palermo (u pitittu ci fazzu veniri)

(“u pitittu ci fazzu veniri” = “l’appetito gli faccio venire”, frase usata da una rete di venditori ambulanti di sfincione a Palermo per attirare l’attenzione dei passanti)

Il primo sabato di marzo è ormai come una ricorrenza sacra, si festeggia l’open data day in molte città del mondo http://opendataday.org/ e siamo contenti perchè ci incontriamo in tante persone appartenenti a mondi lavorativi e didattici diversi ma accomunati dai dati. E ovviamente Palermo non manca all’appello.

Andrea Borruso mi ha detto che potrei scrivere questo post perché è un evento che ho aspettato sin dallo scorso dicembre, da quando, prima di Natale, abbiamo fatto un incontro pubblico del Team Open Data comunale in compagnia di cittadini e appassionati di dati pubblici. E così in effetti è, mi piace l’open data day e mi ci sono appassionato da quando 4 anni fa per caso conobbi un po di persone con le quali ormai collaboro in maniera costante e felice, aumentando le mie competenze nell’ambito dei dati e del loro riuso.

Quest’anno per l’opendataday abbiamo il comune di Palermo, impegnato in un processo “culturale” di partecipazione e apertura dei dati, il Consorzio ARCA, un incubatore di imprese ormai diventato un’istituzione dell’innovazione a Palermo e OpendataSicilia, questa community di cittadini – e amici – che si divertono a creare esperimenti riusando dati, ma che hanno anche una grande abilità: essere propositivi nei confronti di pubbliche amministrazioni, scuole, e altre comunità che operano con i dati sul territorio nazionale.

Il menù del 4 marzo palermitano prevede:

  • antipasto di linee guida comunali Open Data 2017 in salsa partecipata
  • open data variegati della Polizia Municipale
  • vulnerabilità sismica degli edifici residenziali di Palermo in una mappa da open data
  • una spruzzatina di “A scuola di Opencoesione”
  • start up che usano i dati, per intenderci Smarteating
  • Università e Ricerca insieme per  iniziative e progetti in ambito open data
  • mappatura dei servizi accessibili nelle strutture ricettive
  • open data e Sanità
  • e per finire il dolce:  Web scraping per tutti, introduzione al tema e guida all’uso di alcune tecniche e strumenti

… un ni putemu lamintari st’annu, ….. u pitittu ci fazzu veniri !

Ah dimenticavo, ci vediamo il 4 marzo 2016 alle 9.30 al Consorzio ARCA in viale delle Scienze, edificio 16, Palermo.

Registratevi qui

L’Agenda Unica dei Movimenti Catanesi in Open Data

L’Agenda Unica è un coordinamento delle associazioni e dei gruppi operanti a Catania nell’area della cosiddetta sinistra antagonista. Nasce sotto l’impulso di Officina Rebelde e vi partecipano svariati gruppi tra i quali i Briganti Rugby Librino, Red Militant, la Rete Antirazzista Catanese , il Collettivo Politico Experia, il Collettivo Universitario Catanese e l’Unione degli Studenti.

Tra gli strumenti di cui si è dotato questo coordinamento troviamo un calendario condiviso nel quale ogni gruppo inserisce i propri eventi e iniziative di carattere politico. Lo spirito di questo foglio è di evitare, ove possibile e ove si voglia, la sovrapposizione di iniziative. Ovviamente, una delle sue ricadute è quella di mettere a conoscenza dei propri eventi tutti gli altri partecipanti all’agenda.

Inizialmente l’agenda unica usava un gruppo facebook per questi fini, che poi si è evoluto in un google sheet. Dopo circa un mese da questo passaggio al google sheet. Michele Maresca, Alberto Berrittella ed io abbiamo quindi iniziato a realizzare, nell’ambito dell’opendatahacklab di Hackspace Catania e sulla falsa riga di quanto fatto a Matera, una ontologia RDF/XML dell’agenda unica, basata sul google sheet, ed un corrispondente sito web. Appena pronto, abbiamo proposto di liberare i dati degli eventi in agenda agli altri partecipanti, che hanno accolto la proposta con entusiasmo.

Sono molto lieto che la condivisione della conoscenza, tramite gli open data, inizi ad essere percepito come un valore e non come un tabù (cfr. son tutti buoni con gli open data degli altri). Mi auguro inoltre che questa operazione favorisca la diffusione delle iniziative e, di conseguenza, delle idee e proposte portate avanti dai vari gruppi  che partecipano ad Agenda Unica.

Invito quindi tutti coloro i quali vogliano contribuire a diffondere notizie su questo genere di eventi ad usare i dati aperti che mettiamo a disposizione. Invito inoltre tutte le altre associazioni e i singoli che vogliano liberare i dati sui propri eventi a replicare l’iniziativa creando una propria agenda (la conversione in RDF/XML renderà infatti semplice l’integrazione tra Agende anche eterogenee). 

 

Il sito di Agenda Unica, con i collegamenti ai sorgenti e all’ontologia, è disponibile alla seguente URL:

http://www.opendatahacklab.org/agenda-unica/