Salve,
non ricordo se questo problema, credo abbastanza comune, sia mai stato proposto e quindi ecco qua. Volendo passare da dalle poli-linee, che rappresentano i confini di aree limitrofe, ai corrispondenti poligoni, l'algoritmo di "poligonizzazione", per come esso opera, produce un risultato scorretto (vd. per esempio immagine allegata). <http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/file/t395630/confini_poligoni.png> Esiste un qualche modo di pre-trattare il layer delle linee per risolvere il problema, evitando di ridigitalizzare (ricalcare) tutti i poligoni a mano? Saluti Nino -- Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/ _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 796 iscritti al 28/12/2017 |
Ciao Nino,
per aiutare a contestualizzare il problema: * qual è l'algoritmo di poligonalizzazione che hai applicato? (gdal, grass, qgis) * in che software l'hai applicato e che versione? (es. QGIS 2.18) * come sono fatte le linee? Sono tratti spezzati a ogni intersezione? Hai un dataset di esempio? Grazie, Ale On 06/09/2018 13:33, nformica wrote: > Salve, > non ricordo se questo problema, credo abbastanza comune, sia mai stato > proposto e quindi ecco qua. > Volendo passare da dalle poli-linee, che rappresentano i confini di aree > limitrofe, ai corrispondenti poligoni, l'algoritmo di "poligonizzazione", > per come esso opera, produce un risultato scorretto (vd. per esempio > immagine allegata). > <http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/file/t395630/confini_poligoni.png> > > Esiste un qualche modo di pre-trattare il layer delle linee per risolvere il > problema, evitando di ridigitalizzare (ricalcare) tutti i poligoni a mano? > > Saluti > Nino > > -- > Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/ > _______________________________________________ > [hidden email] > http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss > Questa e' una lista di discussione pubblica aperta a tutti. > I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. > 796 iscritti al 28/12/2017 -- -- Alessandro Sarretta skype/twitter: alesarrett Web: ilsarrett.wordpress.com <http://ilsarrett.wordpress.com> Research information: * Google scholar profile <http://scholar.google.it/citations?user=IsyXargAAAAJ&hl=it> * ORCID <http://orcid.org/0000-0002-1475-8686> * Research Gate <https://www.researchgate.net/profile/Alessandro_Sarretta> * Impactstory <https://impactstory.org/AlessandroSarretta> _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 796 iscritti al 28/12/2017 |
Ciao Ale,
ho provato l'algoritmo di QGIS (QGIS 2.18) che credo si basi su quello di GDAL. Per quanto riguarda GRASS, ho provato la sequenza: v.type (per passare da lines a boundaries), v.centroids; ma anche questa non funziona. Certo le linee sono delle spezzate in tutti i punti di incrocio e infatti è per questo che il "poligonize" genera dei poligoni sbagliati. D'altra parte modificare una per una le linee, perchè il poligonize possa funzionare è improponibile (tranne nei casi semplici). Ne parlano anche in questa discussione: https://gis.stackexchange.com/questions/207463/convert-a-line-to-polygon Per eventuali prove, questo è un semplice layer di linee di esempio: https://drive.google.com/open?id=1Zp1Qq69c6WD4knFmmlTvGBiIIfm3Dbjo ma ovviamente mi interessa una soluzione che vada bene in generale anche in casi più complessi. Cari saluti Nino -- Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/ _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 796 iscritti al 28/12/2017 |
Administrator
|
Ciao Nino,
che file strano con EPSG:3004 e con coordinate immaginarie. In ogni casi l'ho guardato rapidamente a riga di comando con l'eccezionale mapshaper e se poligonizzo ottengo un risultato che mi sembra corretto. Non ho QGIS adesso disponibile, quindi non posso fare il tuo test. <http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/file/t185083/yvhDYzV.png> ----- Andrea Borruso ---------------------------------------------------- twitter: https://twitter.com/aborruso website: https://medium.com/tantotanto 38° 7' 48" N, 13° 21' 9" E ---------------------------------------------------- -- Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/ _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 796 iscritti al 28/12/2017
Andrea Borruso
---------------------------------------------------- twitter: https://twitter.com/aborruso website: https://medium.com/tantotanto 38° 7' 48" N, 13° 21' 9" E ---------------------------------------------------- |
In reply to this post by nformica
On Thu, 6 Sep 2018 06:40:15 -0700 (MST), nformica wrote:
> Per eventuali prove, questo è un semplice layer di linee di esempio: > https://drive.google.com/open?id=1Zp1Qq69c6WD4knFmmlTvGBiIIfm3Dbjo > > ma ovviamente mi interessa una soluzione che vada bene in generale > anche in > casi più complessi. > ciao Nino, con SpatiaLite sembra facilissimo risolvere il problema, ma suppongo che PostGIS dovrebbe dare piu' o meno gli stessi identici risultati visto che entrambi usano le solite librerie di base (GEOS etc). 1) ho importato il tuo SHP "siciliano" nella tavola "ambiti_reg" 2) poi ho eseguito la Polygonize in forma aggregata: CREATE TABLE aggr_polyg (id INTEGER PRIMARY KEY); SELECT AddGeometryColumn('aggr_polyg', 'geom', 3004, 'MULTIPOLYGON', 'XY'); INSERT INTO aggr_polyg SELECT NULL, ST_Polygonize(geometry) FROM ambiti_reg; a questo punto ho ottenuto un singolo MultiPolygon con tutti i poligoni elementari correttamente ricostruiti. 3) ultimo passaggio: ho usato la ElementaryGeometries per "sciogliere" tutti i poligoni elementari. stop. ciao Sandro p.s.: spesso fatico a capire ... usare uno Spatial DBMS dovrebbe essere _SEMPRE_ la prima soluzione ovvia e scontata da prendere in esame per affrontare qualsiasi problema di spatial processing. noto che invece gli approcci Spatial SQL tendono sistematicamente ad essere ignorati ... boh non capisco ma mi adeguo :-D _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 796 iscritti al 28/12/2017 |
In reply to this post by nformica
nformica wrote
> Salve, > non ricordo se questo problema, credo abbastanza comune, sia mai stato > proposto e quindi ecco qua. > Volendo passare da dalle poli-linee, che rappresentano i confini di aree > limitrofe, ai corrispondenti poligoni, l'algoritmo di "poligonizzazione", > per come esso opera, produce un risultato scorretto (vd. per esempio > immagine allegata). > <http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/file/t395630/confini_poligoni.png> > > Esiste un qualche modo di pre-trattare il layer delle linee per risolvere > il > problema, evitando di ridigitalizzare (ricalcare) tutti i poligoni a mano? Nino, in QGIS 3 funziona bene, guarda qui [0] basta usare gli strumenti di prosessing - poligonizza [0] <http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/file/t395773/poligonize.png> ----- https://pigrecoinfinito.wordpress.com/ -- Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/ _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 796 iscritti al 28/12/2017 |
E lo sapevo io che i "big" hanno sempre una soluzione facile pronta !!
Grazie a tutti: Andrea, Totò e Sandro. In particolare Andrea, mi hai fatto conoscere "mapshaper" un altro tool che può essere molto molto utile, anche perchè ha una comoda interfaccia web. Grazie di nuovo ! Nino -- Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/ _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 796 iscritti al 28/12/2017 |
Free forum by Nabble | Edit this page |