Kantenanpassung für Features (Editing)

Zusammenfassung

Ändert Eingabe-Linien-Features, indem ihre Form mithilfe der angegebenen Kantenanpassungs-Links räumlich angepasst wird, sodass sie mit den Linien im benachbarten Dataset verbunden werden.

Weitere Informationen zur Kantenanpassung

Abbildung

Abbildung zum Werkzeug "Kantenanpassung für Features"

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 Eingabedaten ändern oder aktualisieren.

  • Dieses Werkzeug ist für die Verwendung im Anschluss an das Werkzeug Kantenanpassungs-Links erstellen vorgesehen. Damit werden die Formen der Eingabelinien mithilfe der vom Werkzeug Kantenanpassungs-Links erstellen erstellten Eingabe-Link-Features räumlich angepasst, sodass sie ordnungsgemäß mit den benachbarten Linien-Features entlang der Kantenbereiche verbunden werden. Die Eingabe-Link-Features müssen SRC_FID- und ADJ_FID-Felder enthalten.

  • Hinweis:

    Alle Eingaben müssen sich im selben Koordinatensystem befinden.

  • Dieses Werkzeug leitet neue Verbindungsstellen aus den Kantenanpassungs-Links ab und ändert die entsprechenden Features, sodass deren Endpunkte mit den neuen Stellen verbunden werden. Die neuen Verbindungsstellen werden in Abhängigkeit von den angegebenen Eingabeparametern (Eingabe-Features, Benachbarte Features und Rahmen-Features) bestimmt und die relevanten Features entsprechend angepasst. Diese Anpassung stellt sicher, dass abgeglichene Features verbunden sind, wie im Folgenden erläutert:

    • Wenn nur Parameter Eingabe-Features angegeben wird, werden die Endpunkte der Kantenanpassungs-Links als die neuen Verbindungsstellen verwendet. Die mit den Kantenanpassungs-Links verknüpften Eingabelinien (d. h. deren Feature-IDs stimmen mit den SRC_FID-Werten der Links überein) werden angepasst, sodass sie an den Endpunkten der Links enden. Auf diese Weise wird sichergestellt, dass sie mit den gewünschten benachbarten Features, die an der Erstellung der Kantenanpassungs-Links beteiligt waren, verbunden sind.
    • Werden sowohl der Parameter Eingabe-Features als auch der Parameter Benachbarte Features angegeben, werden die Mittelpunkte der Kantenanpassungs-Links als die neuen Verbindungsstellen verwendet. Sowohl die verknüpften Eingabelinien als auch die verknüpften benachbarten Linien (d. h. deren Feature-IDs stimmen mit den ADJ_FID-Werten der Links überein) werden angepasst, sodass deren Endpunkte mit den Mittelpunkten der Links verbunden sind.
    • Wird der Parameter Rahmen-Features angegeben, verwendet das Werkzeug die Positionen auf den Rahmen, die den Mittelpunkten der Kantenanpassungs-Links am nächsten liegen, als die neuen Verbindungsstellen. Die Werte in den Parametern Eingabe-Features und Benachbarte Features (falls angegeben) werden angepasst, sodass deren Endpunkte mit den berechneten Rahmenpositionen verbunden werden.

    Der Parameter Methode verfügt über die folgenden Kantenanpassungsoptionen zum Anpassen von Features. Jede Option gilt nur für die Eingabe-Features oder sowohl für die Eingabe-Features als auch die benachbarten Features, wie oben erläutert.

    • Endpunkt verschieben: Der Endpunkt der Eingabelinie wird an die neue Verbindungsstelle verschoben.
    • Segment hinzufügen: Ein gerades Segment wird dem Ende einer Eingabelinie hinzugefügt, sodass diese an der neuen Verbindungsstelle endet.
    • Stützpunkte anpassen: Der Endpunkt einer Linie wird an die neue Verbindungsstelle angepasst. Die verbleibenden Stützpunkte werden ebenfalls angepasst, sodass der Grad der Positionsänderung nach und nach in Richtung des gegenüberliegenden Endes der Linie reduziert wird.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Features

Die Eingabe-Linien-Features, die angepasst werden.

Feature Layer
Eingabe-Link-Features

Die Eingabe-Linien-Features, die Kantenanpassungs-Links darstellen.

Feature Layer
Methode
(optional)

Gibt an, welche Methode zur Kantenanpassung verwendet wird, um lediglich Eingabe-Features oder sowohl Eingabe-Features als auch benachbarte Features an neue Verbindungsstellen anzupassen.

  • Endpunkt verschiebenDer Endpunkt der Eingabelinie wird an die neue Verbindungsstelle verschoben. Dies ist die Standardeinstellung.
  • Segment hinzufügenEin gerades Segment wird dem Ende einer Eingabelinie hinzugefügt, sodass diese an der neuen Verbindungsstelle endet.
  • Stützpunkte anpassenDer Endpunkt einer Linie wird an die neue Verbindungsstelle angepasst. Die verbleibenden Stützpunkte werden ebenfalls angepasst, sodass der Grad der Positionsänderung nach und nach in Richtung des gegenüberliegenden Endes der Linie reduziert wird.
String
Benachbarte Features
(optional)

Die Linien-Features, die neben den Eingabe-Features liegen. Falls angegeben, werden sowohl die Eingabe- als auch die benachbarten Features angepasst, um an neuen Verbindungsstellen aufeinanderzustoßen. Diese sind entweder die Mittelpunkte der Kantenanpassungs-Links oder Positionen, die den Mittelpunkten der Links auf den Rahmen-Features (falls angegeben) am nächsten liegen.

Feature Layer
Rahmen-Features
(optional)

Die Linien- oder Polygon-Features, die Rahmen zwischen den Eingabe- und benachbarten Features darstellen. Wenn Sie Rahmen-Features angeben, werden die Eingabe-Features und die benachbarten Features so angepasst, dass sie an neuen Verbindungsstellen, die den Mittelpunkten der Links an den Rahmen-Features am nächsten liegen, aufeinandertreffen.

Feature Layer

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Aktualisierte Eingabe-Features

Die aktualisierten Eingabe-Features.

Feature Layer

arcpy.management.EdgematchFeatures(in_features, in_link_features, {method}, {adjacent_features}, {border_features})
NameErläuterungDatentyp
in_features

Die Eingabe-Linien-Features, die angepasst werden.

Feature Layer
in_link_features

Die Eingabe-Linien-Features, die Kantenanpassungs-Links darstellen.

Feature Layer
method
(optional)

Gibt an, welche Methode zur Kantenanpassung verwendet wird, um lediglich Eingabe-Features oder sowohl Eingabe-Features als auch benachbarte Features an neue Verbindungsstellen anzupassen.

  • MOVE_ENDPOINTDer Endpunkt der Eingabelinie wird an die neue Verbindungsstelle verschoben. Dies ist die Standardeinstellung.
  • ADD_SEGMENTEin gerades Segment wird dem Ende einer Eingabelinie hinzugefügt, sodass diese an der neuen Verbindungsstelle endet.
  • ADJUST_VERTICESDer Endpunkt einer Linie wird an die neue Verbindungsstelle angepasst. Die verbleibenden Stützpunkte werden ebenfalls angepasst, sodass der Grad der Positionsänderung nach und nach in Richtung des gegenüberliegenden Endes der Linie reduziert wird.
String
adjacent_features
(optional)

Die Linien-Features, die neben den Eingabe-Features liegen. Falls angegeben, werden sowohl die Eingabe- als auch die benachbarten Features angepasst, um an neuen Verbindungsstellen aufeinanderzustoßen. Diese sind entweder die Mittelpunkte der Kantenanpassungs-Links oder Positionen, die den Mittelpunkten der Links auf den Rahmen-Features (falls angegeben) am nächsten liegen.

Feature Layer
border_features
(optional)

Die Linien- oder Polygon-Features, die Rahmen zwischen den Eingabe- und benachbarten Features darstellen. Wenn Sie Rahmen-Features angeben, werden die Eingabe-Features und die benachbarten Features so angepasst, dass sie an neuen Verbindungsstellen, die den Mittelpunkten der Links an den Rahmen-Features am nächsten liegen, aufeinandertreffen.

Feature Layer

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_feature_class

Die aktualisierten Eingabe-Features.

Feature Layer

Codebeispiel

EdgematchFeatures: Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion EdgematchFeatures im unmittelbaren Modus verwendet wird.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.edit.EdgematchFeatures("cityA_Roads.shp", "em_Links.shp"
                             "MOVE_ENDPOINT")
EdgematchFeatures: Beispiel 2 (eigenständiges Skript)

Das folgende eigenständige Python-Skript ist ein Beispiel für die Anwendung der Funktion EdgematchFeatures in einer Skriptumgebung.

"""
Name:        EdgematchFeatures_example_script2.py
Description: Performs edgematching spatial adjustment using links produced by
             GenerateEdgematchLinks. The links go from input features to adjacent 
             features. The links are then checked for intersecting conditions, which
             may not be desired. They are then used to adjust input features 
             (a copy is made) to connect to the matched adjacent features.
"""

# Import system modules.
import arcpy

# Set environment settings.
arcpy.env.overwriteOutput = True
arcpy.env.workspace = r"D:\conflationTools\ScriptExamples\data.gdb"

# Set local variables.
inFeatures = "roads1"
adjFeatures = "roads2"
gelOutput = "gelinks_out"

search_distance = "200 Feet"
match_fields = "NAME ROAD_NAME"

qaLocations = "qa_locations"

# Generate rubbersheet links.
arcpy.edit.GenerateEdgematchLinks(inFeatures, adjFeatures, gelOutput, search_distance, match_fields)

"""
Note 1:  The result of GenerateEdgematchLinks may contain errors; see the tool reference.
         Inspection and editing may be necessary to ensure correct links before using
         them for edgematching.

         One of the possible errors is intersecting or touching links.  
         Their locations can be found by the process below.
"""

# Find locations where links intersect or touch. The result contains coincident points.
arcpy.analysis.Intersect(gelOutput, qaLocations, "", "", "POINT")

# Delete coincident points.
arcpy.management.DeleteIdentical(qaLocations, "Shape")

"""
Note 2:  You can manually inspect locations in qaLocations and delete or
         modify links as needed.
"""

# Make a copy of the inFeatures for edgematching.
inFeature_Copy = inFeatures + "_Copy"
arcpy.management.CopyFeatures(inFeatures, inFeature_Copy)

# Use the links to adjust the copy of the input features.
arcpy.edit.EdgematchFeatures(inFeature_Copy, gelOutput, "MOVE_ENDPOINT")