[QGIS-it-user] recuperare uno shapefile poligonale corrotto

Alessio Degioannini a.degioannini a proterstudio.com
Mer 7 Apr 2021 03:24:31 PDT


Ciao,

sono alle prese con uno shapefile corrotto di poligoni (circa 760 entitā).

Premetto che uso QGis 3.16.5 sotto Windows 10 Pro 64-bit, Build 19042, 
ma il problema si presenta anche con le recenti releases 3.16.4, 3.10.x. 
e sotto Ubuntu (Qgis 3.18.1)

  * Edito il layer per un po' (aggiungo poligoni, elimino, modifico,
    taglio...), avendo preventivamente attivate le funzioni di snap al
    vertice, modifica topologica, evita sovrapposizione, aggancio
    all'intersezione, auto-aggancio.

  * Successivamente esporto (in formato shapefile o geopackage, ma non
    trovo differenze nei risultati: tra l'uno e l'altro formato ormai
    sono arrivato ad avere una trentina di versioni...).

  * Ogni volta che apro la nuova versione e ne faccio la validazione
    topologica ottengo solo un tipo di errore, quello di sovrapposizione
    (in media 170-180 errori).

  * Ho provato a correggere manualmente alcuni errori, ho salvato ed ho
    esportato, ho rifatto la validazione topologica e gli errori che
    avevo corretto a volte sono scomparsi, a volte no e, comunque, dove
    prima non risultavano errori invece ora ce ne sono, altri che prima
    comparivano ora sono scomparsi... Oltretutto, quando tento di
    correggere qualche errore, a volte magicamente compaiono nodi doppi
    che prima non risultavano. In pratica gli errori si propagano.

  * Alla fine Qgis va in crash (vd. allegato). Se lavoro sotto Ubuntu,
    Qgis dopo un po', semplicemente, si chiude senza la solita finestra
    di crash.

  * Ho provato ad utilizzare v.clean direttamente con Grass (non sotto
    Qgis): sembra che il risultato sia finalmente buono (il layer
    importato in Qgis supera indenne tutta la validazione topologica),
    ma dopo un po' sono daccapo.

  * Ho convertito i poligoni in layer multilinea e la validazione
    topologica mi ha dato centinaia di pseudonodi, oltre naturalmente a
    qualche nodo doppio.

  * Il controllo della validitā, fatto sia per il layer di poligoni che
    per quello di linee, non dā errori in alcuno dei tre metodi di
    controllo.

Qualcuno saprebbe suggerirmi una procedura per provare a recuperare il 
file?

Grazie per l'attenzione e cordiali saluti.

Alessio


-------------- parte successiva --------------
Un allegato HTML č stato rimosso...
URL: <http://lists.osgeo.org/pipermail/qgis-it-user/attachments/20210407/5536a804/attachment.html>
-------------- parte successiva --------------
Crash ID: 9b235b5395dc01946b5502171c46c714aaf55ce5


Stack Trace


QgsGeometry::closestVertex qgsgeometry.cpp:388
QgsPointLocator_VisitorNearestVertex::visitData qgspointlocator.cpp:117
Index::~Index :
Index::~Index :
QgsPointLocator::nearestVertex qgspointlocator.cpp:1176
_updateBestMatch qgssnappingutils.cpp:214
QgsSnappingUtils::snapToMap qgssnappingutils.cpp:347
QgsMapMouseEvent::snapPoint qgsmapmouseevent.cpp:52
QgsMapToolAdvancedDigitizing::canvasMoveEvent qgsmaptooladvanceddigitizing.cpp:111
QgsMapCanvas::mouseMoveEvent qgsmapcanvas.cpp:1994
QWidget::event :
QFrame::event :
QGraphicsView::viewportEvent :
QCoreApplicationPrivate::sendThroughObjectEventFilters :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsApplication::notify qgsapplication.cpp:458
QCoreApplication::notifyInternal2 :
QApplicationPrivate::sendMouseEvent :
QSizePolicy::QSizePolicy :
QSizePolicy::QSizePolicy :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsApplication::notify qgsapplication.cpp:458
QCoreApplication::notifyInternal2 :
QGuiApplicationPrivate::processMouseEvent :
QWindowSystemInterface::sendWindowSystemEvents :
QEventDispatcherWin32::processEvents :
UserCallWinProcCheckWow :
DispatchMessageWorker :
QEventDispatcherWin32::processEvents :
qt_plugin_query_metadata :
QEventLoop::exec :
QCoreApplication::exec :
main main.cpp:1637
BaseThreadInitThunk :
RtlUserThreadStart :




QGIS Info
QGIS Version: 3.16.4-Hannover
QGIS code revision: 654e76b3cb
Compiled against Qt: 5.11.2
Running against Qt: 5.11.2
Compiled against GDAL: 3.1.4
Running against GDAL: 3.1.4



System Info
CPU Type: x86_64
Kernel Type: winnt
Kernel Version: 10.0.19042



Maggiori informazioni sulla lista QGIS-it-user