Wie repariere ich die Topologie eines Shapefiles?

9

Ich habe eine objektbasierte Bildanalyse mit ENVI EX durchgeführt und jedes der klassifizierten Features wurde als Shapefile exportiert. Ich habe diese Shapefiles in ArcMap 10 übertragen und versucht, sie mit anderen Shapefiles desselben Bereichs zu schneiden, die von GeoBase erworben wurden .

Wenn ich versuche, das Schnittwerkzeug auszuführen, wird eine Fehlermeldung angezeigt, die besagt, dass die Topologie der aus ENVI EX extrahierten Shapefiles ungültig ist. Ich habe versucht, das Topologie-Tool einzuschalten, um die Topologie dieser Shapefiles zu reparieren, aber die Schaltflächen sind ausgegraut, und ich kann anscheinend nicht darauf klicken. Das Topologie-Tool funktioniert nicht für alle Shapefiles, die ich habe.

Irgendwelche Lösungen? Wie kann ich die Topologie reparieren und den Schnittpunkt ausführen?

kaoscify
quelle

Antworten:

12

Ähnliche Probleme gab es auch bei Polygonen. Vielleicht haben Sie ein ähnliches Problem.

Fehlermeldung von ESRI : "Ungültige Topologie (unvollständige leere Poly)"

Tatsächlicher Fehler : "Ungültige Geometrie"

Fix : Führen Sie "Repair Geometry" aus (ändert die Daten an Ort und Stelle, seien Sie vorsichtig, es gibt kein Rückgängigmachen)

Was passiert ist, dass der gemeldete Fehler nicht die ESRI-Terminologie von Topologie / Geometrie verwendet und alle verwirrt. In meinem Fall wurden, während der Fehler über Topologien sprach, keine Topologien definiert (Topologie wie in einer ESRI-Topologie). Bei der Überprüfung der Geometrie (mit dem Werkzeug "Geometrie prüfen") stellte ich jedoch fest, dass bei meiner Geometrie (wie bei einer ESRI-Geometrie) Fehler aufgetreten sind.

Michalis Avraam
quelle
4

Nur für den Fall, dass ArcMap nicht funktioniert, sollten Sie das v.clean-Tool von GRASS ausprobieren. Sie können GRASS mit QGIS installieren. Nach der Installation:

Bereinigen der Topologie einer SHAPE-Datei mit der GRASS Toolbox

  1. Laden Sie die SHAPE-Datei in QGIS
  2. Verwenden Sie ein vorhandenes GRASS-Kartenset (oder erstellen Sie ein neues) mit den entsprechenden Projektionseinstellungen
  3. Jetzt müssen Sie die SHAPE-Datei von QGIS nach GRASS übertragen, indem Sie Toolbox -> Dateiverwaltung -> In GRASS importieren -> Vektor in GRASS importieren -> Vektor aus der QGIS-Ansicht in GRASS importieren (v.in.ogr.qgis). Abhängig von der Qualität Ihrer SHAPE-Datei können einige topologische Probleme gemeldet werden.
  4. Diese topologischen Probleme können wir jetzt in GRASS über die Toolbox mit den Topologie-Tools beheben: Vektor -> Karte entwickeln -> Toolset zum Bereinigen der Topologie der Vektorkarte -> v.clean.break. Definieren Sie einen Schwellenwert in Karteneinheiten (z. B. 0,5 [m] oder ähnlich). Analysieren Sie den gedruckten Bericht. Möglicherweise muss der Schwellenwert angepasst oder ein anderes Tool zur Topologiebereinigung verwendet werden. Klicken Sie dann auf Ausgabe anzeigen, um das Ergebnis als Karte anzuzeigen.
  5. Exportieren Sie die bereinigte Karte in das SHAPE-Format: Dateiverwaltung -> Aus GRASS exportieren -> Vektor aus GRASS exportieren -> v.out.ogr
RK
quelle