Zusammenfassung
Vereinfacht die Eingabe-Features unter Nutzung einer angegebenen maximalen Versatztoleranz. Die Ausgabe-Features enthalten nur eine Teilmenge der ursprünglichen Eingabe-Stützpunkte.
Abbildung
Verwendung
Dieses Werkzeug verwendet denselben Algorithmus (Douglas-Peucker-Algorithmus zur Vereinfachung) wie die Methode "Point Remove" des Werkzeugs Linie vereinfachen. Das Werkzeug Linie vereinfachen stellt mehr Parameter bereit und erstellt eine neue Ausgabe, während dieses Werkzeug die Eingabe-Feature-Class ändert.
Dieses Werkzeug generalisiert Features von Datensatz zu Datensatz. Abschnitte von Linien und Polygonen, die bei mehreren Features lagegleich sind, sind nach der Ausführung des Werkzeugs unter Umständen nicht mehr lagegleich.
Bézierkurven, Kreisbogen- und Ellipsenbogensegmente werden in gerade Liniensegmente konvertiert.
Mit diesem Werkzeug werden Datensätze oder Features nicht gelöscht. Wenn die Toleranz größer als ein Polygon ist, wird das Polygon auf drei Stützpunkte reduziert.
Syntax
Generalize_edit (in_features, {tolerance})
Parameter | Erläuterung | Datentyp |
in_features | Die Polygon- oder Linien-Features, die generalisiert werden sollen. | Feature Layer |
tolerance (optional) | Die Toleranz legt den maximal zulässigen Versatz fest, der den Grad der Vereinfachung bestimmt. Dieser Wert definiert die maximale Entfernung der Ausgabegeometrie von der Eingabegeometrie. Sie können eine bevorzugte Maßeinheit angeben. Die Standardeinstellung ist die Einheit des Features. | Linear unit |
Codebeispiel
Generalisieren – Beispiel (Python-Fenster)
Das folgende Skript veranschaulicht, wie Sie die Funktion "Generalisieren" unmittelbar im Python-Fenster ausführen.
import arcpy
arcpy.env.workspace = "C:\data\data.gdb"
arcpy.Generalize_edit("zones", "10 Feet")
Generalisieren – Beispiel 2 (eigenständiges Skript)
Das untenstehende Skriptbeispiel zeigt die Verwendung der Funktion "Generalisieren" innerhalb eines Workflows, in dem Features zuerst vereinfacht und dann gepuffert werden, bei Ausführung in einem eigenständigen Skript:
#Name: BufferZones.py
#Purpose: Simplify features using the Generalize tool and then Buffer them
#Import script modules
import arcpy
try:
#Set the workspace
arcpy.env.workspace = "C:/data/data.gdb"
#Set local parameters
inFeatures = "zones"
gTolerance = "4 Feet"
copFeatures = "zones_cp"
bufDist = "50 Miles"
bufOutput = "zones_buff"
#Since Generalize permanently updates the input, first make a copy of the original FC
arcpy.CopyFeatures_management (inFeatures, copFeatures)
#Use the Generalize tool to simplify the Buffer input to shorten Buffer processing time
arcpy.Generalize_edit(copFeatures, gTolerance)
#Buffer the output
arcpy.Buffer_analysis(copFeatures, bufOutput, bufDist)
except Exception as err:
print(err)
Umgebungen
Lizenzinformationen
- ArcGIS Desktop Basic: Nein
- ArcGIS Desktop Standard: Ja
- ArcGIS Desktop Advanced: Ja