Die von @Adam Cara geäußerte Besorgnis ist sehr berechtigt. Als ich mir jedoch die Selbstkreuzung ansah, stellte sich heraus, dass die meisten von ihnen entweder dünne Teile an der Grenze zwischen zwei massiven Polygonen oder getrennte Teile / Inseln eines großen Polygons in einem anderen sind. In diesem Fall kann das Löschen von Überlappungen und das Zuweisen aufgelöster Überlappungen das Attribut des nächsten Nachbarn (je nachdem, was zuerst eintritt) bewirken.
Verarbeiten:
arcpy.Intersect_analysis("Landuse2b #","D:/Scratch/mpart.shp","ALL","#","INPUT")
arcpy.MultipartToSinglepart_management("mpart","D:/Scratch/spart.shp")
arcpy.Dissolve_management("spart","D:/Scratch/dissolved_1.shp","#","#","SINGLE_PART","DISSOLVE_LINES")
arcpy.Erase_analysis("Landuse2b","dissolved_1","D:/Scratch/erased.shp","#")
arcpy.DeleteField_management("spart","FID_Landus;OBJECTID;Lnduse2013;Shape_Leng;Shape_Area")
arcpy.SpatialJoin_analysis("spart","erased","D:/Scratch/sj_1.shp","JOIN_ONE_TO_ONE","KEEP_ALL"…..)
arcpy.Merge_management("sj;erased","D:/Scratch/merge_1.shp"….)
arcpy.Dissolve_management("merge_1","D:/Scratch/dissolved.shp","Lnduse2013","#","SINGLE_PART","DISSOLVE_LINES")
Prüfung:
arcpy.Intersect_analysis("dissolved #","D:/Scratch/test.shp","ALL","#","INPUT")
Botschaft:
- Ausführen: "Gelöste #" überschneiden D: \ Scratch \ test.shp ALL # INPUT
- Startzeit: Freitag, 22. April, 10:16:07 Uhr 2016
- Lese-Features ...
- Cracking-Funktionen ...
- Montagefunktionen ...
- WARNUNG 000117: Warnung Leere Ausgabe generiert.
- Erfolgreich beendet am Fr 22 Apr 10:16:09 2016 (Verstrichene Zeit: 2,34 Sekunden)
Beachten Sie, dass diese Meldung bedeutet, dass die Ausgabe von final Dissolve keine Selbstüberschneidungen enthält
Ergebnis:
https://drive.google.com/file/d/0B6B33FrGNitPT0FvbVdHQm0xMDg/view?usp=sharing