Il miglior modo per spiegare un concetto o una procedura è fare un esempio, in questo caso prendo spunto da un quesito posto su un gruppo molto frequentato GIS Italia:
Buongiorno, un aiuto se è possibile, ho uno shp con punti piani (solo X e Y) dove in un campo sono presenti i valori della Z, è possibile in qualche modo trasferire l’informazione della Z all’interno della geometria così da far diventare i punti in spaziali? ( Per intenderci quando interrogo lo shp avere Z<>0 in derivato) Grazie
Per risolvere il quesito è possibile percorrere varie strade ma in questo articolo voglio seguire la strada maestra: la riga di comando e utilizzare le librerie GDAL/OGR in particolare lo strepitoso ogr2ogr.
Con una semplice riga di comando è possibile rispondere al quesito, inoltre è valido per qualsiasi tipo di geometria (punto, linea e poligono):
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ogr2ogr -f "ESRI Shapefile" outfile.shp infile.shp -zfield Z_field |
basti avviare, per esempio, la shell di OSGeo4W e scrivere lo script di sopra, dove outfile.shp è il percorso del file .shp e outfile.shp è il percorso del file di uscita, cioè lo shapefile 3D. Z_field è il campo che contiene i valori della terza dimensione.

Note finali: La riga di comando, anche se è nata prima delle windows e del mouse, è una delle ultime mie esperienze positive e per questo devo ringraziare WikiAndy conosciuto anche come Andrea Borruso.
Vi invito a provare lo script e di ripetere lo stesso processo con altri metodi come per esempio quelli descritti qui; quest’ultimi necessitano di QGIS e di GRASS GIS.
Forse (ma non ne sono sicuro) devi correggere qualche veniale errore di “dislessia” da tastiera (mi hanno spiegato che succede perchè le dita della mano destra battono sulla tastiera più veloci delle dita della mano sinistra).
Invece di outfiele.shp dovrebbe essere outfile.shp
Invece di outfile.shp dovrebbe essere infile.shp
Invece di Z_filed dovrebbe essere Z_file.
"Mi piace""Mi piace"
Ciao Marco,
ho già corretto stamani, grazie per la segnalazione!!!
"Mi piace""Mi piace"