ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Hilfe
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Die Mapping-Plattform für Ihre Organisation

ArcGIS Desktop

Ein vollständiges professionelles GIS

ArcGIS Enterprise

GIS in Ihrem Unternehmen

ArcGIS Developers

Werkzeuge zum Erstellen standortbezogener Apps

ArcGIS Solutions

Kostenlose Karten- und App-Vorlagen für Ihre Branche

ArcGIS Marketplace

Rufen Sie Apps und Daten für Ihre Organisation ab.

  • Dokumentation
  • Support
Esri
  • Anmelden
user
  • Eigenes Profil
  • Abmelden

ArcMap

  • Startseite
  • Erste Schritte
  • Karte
  • Analysieren
  • Verwalten von Daten
  • Werkzeuge
  • Erweiterungen

Fangen

  • Zusammenfassung
  • Abbildung
  • Verwendung
  • Syntax
  • Codebeispiel
  • Umgebungen
  • Lizenzinformationen

Zusammenfassung

Verschiebt Punkte oder Stützpunkte so, dass diese mit den Stützpunkten, Kanten oder Endpunkten anderer Features genau lagegleich sind. Sie können Fangregeln angeben, um zu steuern, ob Eingabestützpunkte innerhalb einer angegebenen Entfernung am nächsten Stützpunkt, an einer Kante oder an einem Endpunkt gefangen werden.

Abbildung

Abbildung des Werkzeugs "Fangen"
Sie sehen hier Beispiele für Ergebnisse des Werkzeugs "Fangen".

Verwendung

    Vorsicht:

    Mit diesem Werkzeug werden die Eingabedaten geändert. Weitere Informationen und Strategien zur Vermeidung unerwünschter Datenänderungen finden Sie unter Werkzeuge, die keine Ausgabe-Datasets erstellen.

  • Mit dem Parameter Fangumgebung können die Stützpunkte der Eingabe-Features von den Stützpunkten, Kanten und Endpunkten mehrerer Layer oder Feature-Classes gefangen werden. Wenn mehrere Fangregeln angegeben werden, werden dafür die folgenden Prioritäten verwendet: von oben nach unten im Werkzeugdialogfeld oder von links nach rechts bei der Skripterstellung.

  • Die Stützpunkte der Eingabe-Features werden innerhalb der angegebenen Entfernung am nächsten Stützpunkt, der Kante oder dem Endpunkt gefangen.

  • Im Parameter Fangumgebung können mehrere Fangregeln festgelegt werden, indem der gleiche Layer oder die gleiche Feature-Class mit einem anderen Fangtyp verwendet wird.

  • Wenn ein Layer oder eine Feature-Class mit einer Selektion als Eingabe verwendet wird, werden nur die Stützpunkte der ausgewählten Features gefangen.

  • Beim Fangen von Features in einer Feature-Class an Features derselben Feature-Class, wird das Feature mit der niedrigeren Objekt- oder Feature-ID in der Regel an dem Feature mit der höheren Objekt-ID gefangen (OBJECTID-Feld oder FID-Feld für Shapefiles). Wenn beispielsweise Punkte mit den Feldwerten 1 und 2 für OBJECTID innerhalb der Fangentfernung liegen, wird der OBJECTID-Feldwert 1 an der Position des Punktes mit dem OBJECTID-Feldwert 2 gefangen (und nicht umgekehrt).

  • Hinweis:

    Ein Anwendungsfall für dieses Werkzeug ist das Beheben der Unterschiede von gemeinsamen oder allgemeinen Grenzen zwischen zwei Datasets, indem die Stützpunkte einer Grenze von den Stützpunkten, Kanten oder Endpunkten der anderen Grenze gefangen werden. Falls die Eingabe-Features nicht über die gleiche Anzahl an Stützpunkten verfügen, um die genaue Krümmung der anderen Grenze nachzubilden, können den Eingabe-Features mit dem Werkzeug Verdichten Stützpunkte hinzugefügt werden. Auf diese Weise kann eine höhere Detaillierungsebene erreicht werden.

Syntax

arcpy.edit.Snap(in_features, snap_environment)
ParameterErklärungDatentyp
in_features

Die Eingabe-Features mit Stützpunkten, die von den Stützpunkten, Kanten oder Endpunkten anderer Features gefangen werden. Die Eingabe-Features können Punkte, Multipoints, Linien oder Polygone sein.

Feature Layer
snap_environment
[[Features, Type, Distance],...]

Die Feature-Classes oder Feature-Layer ein, die die Features enthalten, an denen gefangen werden soll.

Eine Fangumgebung setzt sich aus folgenden Komponenten zusammen:

  • Features: Die Features, an denen die Stützpunkte der Eingabe-Features gefangen werden. Diese Eingabe-Features können Punkte, Multipoints, Linien oder Polygone sein.
  • Typ: Der Typ des Feature-Teils, an dem die Stützpunkte der Eingabe-Features gefangen werden können.
  • Entfernung: Die Entfernung, innerhalb der die Stützpunkte der Eingabe-Features von dem nächsten Endpunkt, dem nächsten Stützpunkt oder der nächsten Kante gefangen werden.

Die folgenden Fangtypen stehen zur Verfügung:

  • END: Eingabe-Feature-Stützpunkte werden an Feature-Enden gefangen.
  • VERTEX: Eingabe-Feature-Stützpunkte werden an Feature-Stützpunkten gefangen.
  • EDGE: Eingabe-Feature-Stützpunkte werden an Feature-Kanten gefangen.
Hinweis:

Wenn eine Entfernung ohne Einheit verwendet wird (z. B. 10 anstatt 10 Meter), wird standardmäßig die lineare Einheit oder Winkeleinheit aus dem Koordinatensystem des Eingabe-Features verwendet. Sofern die Eingabe-Features über ein projiziertes Koordinatensystem verfügen, wird dessen lineare Einheit verwendet.

Value Table

Abgeleitete Ausgabe

NameErklärungDatentyp
out_feature_class

Die aktualisierten Eingabe-Features.

Feature Class

Codebeispiel

Fangen – Beispiel 1 (Python-Fenster)

Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion Snap verwenden.

import arcpy
arcpy.env.workspace = "C:/data"

arcpy.Snap_edit("climate.shp", 
                [["Habitat_Analysis.gdb/vegtype", "VERTEX", "30 Feet"], 
                 ["Habitat_Analysis.gdb/vegtype", "EDGE", "20 Feet"]])
Fangen – Beispiel 2 (eigenständiges Skript)

Die Klimazonengrenze wird von Vegetations-Layer-Grenze gefangen, um sicherzustellen, dass die gemeinsame Grenze lagegleich ist

# 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
climate = "climate.shp"
climateBackup = "C:/output/Output.gdb/climateBackup"
arcpy.CopyFeatures_management(climate, 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, "DISTANCE", "10 Feet")

# Snap climate regions feature class to  vegetation layer vertices and edge
veg = "Habitat_Analysis.gdb/vegtype"

# First, snap climate region vertices to the nearest vegetation layer vertex 
# within 30 Feet
snapEnv1 = [veg, "VERTEX", "30 Feet"]

# Second, snap climate region vertices to the nearest vegetation layer edge 
# within 20 Feet
snapEnv2 = [veg, "EDGE", "20 Feet"]
arcpy.Snap_edit(climate, [snapEnv1, snapEnv2])

Umgebungen

  • Ausdehnung
  • Aktueller Workspace

Lizenzinformationen

  • Basic: Nein
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen

  • Überblick über die Toolbox "Editing"

ArcGIS Desktop

  • Startseite
  • Dokumentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Über Esri

  • Über uns
  • Karriere
  • Esri Blog
  • User Conference
  • Developer Summit
Esri
Wir sind an Ihrer Meinung interessiert.
Copyright © 2021 Esri. | Datenschutz | Rechtliches