splittare uno shapefile e convertirlo in dxf – riga di comando

Quesito posto nel gruppo facebook GIS Italia:

Buongiorno a tutti e grazie per avermi accettato in questa community!
Avrei un quesito: è possibile estrarre contemporaneamente più dxf da un vettore in relazione ad un campo della tabella attributi? Es: ho un unico vettore con una colonna attributi riportante una descrizione (strada, edificio, verde pubblico, ecc…) e vorrei generare tanti dxf separati (strada.dxf, edificio. dxf, verde pubblico.dxf, ecc…) senza doverli splittare manualmente e salvarli uno ad uno.
Grazie in anticipo per l’aiuto!

Con QGIS è possibile splittare uno shapefile in funzione di un attributo e successivamente esportare il tutto in un unico file dxf, ma il quesito richiede un output di singoli file dxf.

Un modo rapido per ottenere il risultato è scrivere uno script:

copiarlo ed incollarlo nella shell bash ed in pochi secondi (dipende dal peso dello shapefile) si otterrà il risultato voluto: tutti gli shapefile i dxf saranno raccolti rispettivamente nelle cartelle nomecartellash, nomecartelladxf.

Osservazioni:

  1. lo script va lanciato nella cartella che contiene lo shapefile da splittare (io ho usato sicilia.shp (province), sostituite il nome del vostro shapefile);
  2. sigla.csv è il file che contiene gli attributi con cui splittare, cambiate il nome a piacere;
  3. nella creazione dei file dxf noterete degli avvisi di errore legati alla tabella attributi, è normale non preoccupatevi;
  4. è consigliabile che gli attributi, con cui splittate lo shapefile, non contengano spazi o caratteri speciali in quanto diventeranno i nomi degli shapefile;

 

qgis_sicilia
QGIS – unico shapefile
qgis_split
QGIS e gli shapefile splittati
nomecartelladxf
cartella dei dxf
nomecartellashp
cartella shapefile splittati
cartella1
cartella dopo esecuzione script

affinchè lo script funzioni occorre che siano installate:

per chi usa windows 10, ecco una guida per installare la bash ubuntu.

 


NOTE FINALI: per chi fosse alle prime armi, con la riga di comando, sembrerebbe tutto difficile e macchinoso, ma vi assicuro che dopo qualche tempo di esercizio e con un po’ di buona volontà tutto diventa chiaro e semplice.

Lo script è migliorabile, ma credo sia un buon inizio e soprattutto molto didattico.

Un enorme grazie al mio amico Andrea Borruso per avermi trasmesso un po’ della sua passione.


 

video:

 

donate:

https://www.paypal.me/pigrecoinfinito

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...