Zusammenfassung
Fügt Stützpunkte entlang von Linien-Features oder Polygon-Features hinzu. Ersetzt auch Kurvensegmente (Bézier, Kreisbögen und Ellipsen) durch Liniensegmente.
Abbildung
Verwendung
Gerade Liniensegmente werden mit dem Parameter Abstand verdichtet. Kurvensegmente werden mithilfe der Verdichtung vereinfacht, indem einer der Parameter Abstand, Maximaler Ablenkungswinkel oder Maximale Abweichung bei Versatz verwendet wird.
Die Verdichtung wird von Segment zu Segment durchgeführt.
Bei jeder Ausführung von Verdichten kann nur eine Verdichtungsmethode ausgewählt werden.
Der Raumbezug der Daten ist für das von diesem Werkzeug gelieferte Ergebnis sehr wichtig. Daten sollten in einem entsprechenden Koordinatensystem verdichtet werden, um die richtige Form der Features beizubehalten.
Für jeden Stützpunkt des ursprünglichen Features, einschließlich des Ausgangs- und Endpunktes, gibt es einen lagegleichen Stützpunkt im resultierenden Feature.
Wenn die Eingabegeometrie beim Verdichten mit Maximale Abweichung bei Versatz Kreisbögen enthält, wird eine Obergrenze für den Versatz durchgesetzt. Der Winkel zwischen zwei aufeinanderfolgenden Liniensegmenten kann in der Ausgabe dann zehn Grad nicht überschreiten. Dieser Winkel kann überschritten werden, wenn Sie mit der Option Maximaler Ablenkungswinkel verdichten.
Syntax
arcpy.edit.Densify(in_features, {densification_method}, {distance}, {max_deviation}, {max_angle})
Parameter | Erklärung | Datentyp |
in_features | Die Polygon- oder Line-Feature-Class, die verdichtet werden soll. | Feature Layer |
densification_method (optional) | Die Methode, die für die Feature-Verdichtung ausgewählt wurde.
| String |
distance (optional) | Der maximale lineare Abstand zwischen Stützpunkten. Dieser Abstand wird immer auf Liniensegmente und zum Vereinfachen von Kurven angewendet. Der Standardwert ist eine Funktion der XY-Toleranz der Daten. | Linear unit |
max_deviation (optional) | Die maximale Entfernung, die das Ausgabesegment vom Original haben kann. Dieser Parameter wirkt sich nur auf Kurven aus. Der Standardwert ist eine Funktion der XY-Toleranz der Daten. | Linear unit |
max_angle (optional) | Der maximale Winkel zwischen Ausgabegeometrie und Eingabegeometrie. Der gültige Bereich beträgt 0 bis 90. Der Standardwert beträgt 10. Dieser Parameter wirkt sich nur auf Kurven aus. | Double |
Codebeispiel
Verdichten - Beispiel 1 (Python-Fenster)
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion "Densify" im unmittelbaren Modus verwenden.
import arcpy
arcpy.Densify_edit("C:/data.gdb/lines", "ANGLE","", "", "0.75")
Verdichten - Beispiel 2 (eigenständiges Skript)
Das eigenständige Skript unten zeigt die Funktion "Verdichten" als Teil eines Workflows, bei dem auch das Editierwerkzeug "Fangen" verwendet wird.
# Name: Snap.py
# Description: Snap climate regions boundary to vegetation layer
# boundary to ensure common boundary is coincident
# import system modules
#
import arcpy
# Set environment settings
#
arcpy.env.workspace = "C:/data"
# Make backup copy of climate regions feature class,
# since modification with the Editing tools below is permanent
#
climateBackup = "backups/climate.shp"
arcpy.CopyFeatures_management('climate.shp', climateBackup)
# Densify climate regions feature class to make sure there are enough
#vertices to match detail of vegetation layer when layers are snapped
#
arcpy.Densify_edit('climate.shp', "DISTANCE", "10 Feet")
# Snap climate regions feature class to vegetation layer vertices and edge
# first, snap climate region vertices to the nearest vegetation vertex within 30 Feet
# second, snap climate region vertices to the nearest vegetation edge within 20 Feet
#
snapEnv1 = ["Habitat_Analysis.gdb/vegtype", "VERTEX", "30 Feet"]
snapEnv2 = ["Habitat_Analysis.gdb/vegtype", "EDGE", "20 Feet"]
arcpy.Snap_edit('climate.shp', [snapEnv1, snapEnv2])
Umgebungen
Lizenzinformationen
- Basic: Nein
- Standard: Ja
- Advanced: Ja