[Gfoss] QGIS 2.0.1 VS QGIS 1.7.4 - Calcolo delle aree "problematico" - GEOMETRY CHECKER?

a.furieri a lqt.it a.furieri a lqt.it
Mar 14 Gen 2014 10:38:37 CET


On Tue, 14 Jan 2014 10:04:59 +0100, francesco.fiermonte a polito.it 
wrote:
> A prescindere dall'output (QGIS restituisce uno shapefile con i punti
> problematici mentre ArcGIS una semplice table), QGIS (Ftools?)
> evidenzia come errori le "intersezioni" trovate (ad esempio, segments
> 25 and 2508 of line 0 intersect at 363311.471296, 5011028.64815)
> mentre ArcGIS rileva MOLTI meno "problemi" (che definisce come "self
> intersections" e che possono anche NON coincidere con i precedenti).
>


Ciao Francesco,

le figure di tipo poligonale dovrebbero sempre rispettare 
scrupolosamente
un sacco di requisiti molto stringenti:
- non ci dovrebbero mai essere "clessidre"
- non ci dovrebbero essere mai "aghi" o "spine"
- anche i punti ripetuti ("doppie battute") possono dare noia
- etc etc etc

ora ci insegna purtroppo l'esperienza che molti SHP (anche di
nobile origine) contengono spesso allegre amenita': specie
i materiali "stagionati" prodotti svariati anni fa soffrono
spesso di questo problema.

tutte queste anomalie poi causano enormi problemi agli algoritmi
che p.es. calcolano l'area.
nei casi piu' plateali potrebbero anche causare direttamente
un bel crash dell'applicazione.

piu' o meno tutto il sw GIS free/open si basa su GEOS come motore
geometrico di base: e quindi il problema ti si ripresentera' tal
quale sia che tu usi QGIS o PostGIS oppure SpatiaLite o magari
GDAL, MapServer etc, visto che in ogni caso sara' la GEOS a fare
tutto quanto "il lavoraccio sporco"

N.B.: la GEOS negli ultimi due anni e' notevolmente evoluta;
le nuove versioni sono decisamente piu' potenti e sofisticate,
ma sono anche piu' schizzignose.
alcuni "papocchi" che le vecchie versioni avrebbero accettato
"alla bell'e meglio" invece ora possono causare problemi anche
molto seri con le versioni piu' recenti.
e non sempre e' detto che le nuove e le vecchie versioni ritornino
sempre esattamente gli stessi risultati (sono stati irrobustiti
e migliorati svariati algoritmi)


> Chi ha "ragione"? QGIS, ARCGIS oppure tutti e due (visto che
> "evidenziano" tipologie di "errori" diversi, anche spazialmente non
> coincidenti)?
>

qua (auto-intersezioni) siamo in presenza di un vero e proprio
scoglio concettuale:
- ESRI ha deciso di adottare alcune regole abbastanza permissive
- tutto al contrario GEOS ha invece deciso di uniformarsi allo
   scrupoloso rispetto di regole matematiche e geometriche molte
   rigorose.

morale: sono due approcci contrastanti che fanno platealmente a pugni.
tenderei a dirti che io personalmente trovo molto piu' sensate e
ragionevoli le scelte GEOS piutosto che quelle ESRI ... ma tu potresti
anche considerarlo legittimamente un punto di vista partigiano ;-)


HINT / BEST PRACTICES
=====================================

* mai dare per scontato che uno SHP poligonale sia il Vangelo;
   anzi, insegna l'esperienza sul campo che molto spesso contengono
   tantissimi "farfalloni" di gravita' anche severa.

* verificare sempre se le geometrie importate dallo SHP sono
   legittime oppure no.
   p.es. tutti gli Spatial DBMS (PostGIS, SpatiaLite) ti offrono
   una comoda funzione ST_IsValid()

* se si riscontrano geometrie fallate e' quasi sempre possibile
   ripararle automaticamente (o quasi ...).
   anche qua: le versioni piu' recenti di PostGIS e SpatiaLite
   supportano la ST_MakeValid()

credo che comunque anche QGIS sia in grado di esporre direttamente
all'esterno le funzionalita' standard delle librerie di base
GEOS/LWGEOM, come p.es. IsValid / MakeValid

ciao Sandro



Maggiori informazioni sulla lista Gfoss