Объекты метода Подгонка границ (Редактирование)
Краткая информация
Изменяет входные линейные объекты с помощью пространственного уравнивания их форм на основе заданных связей метода подгонки границ, чтобы они соединились с линиями в смежном наборе данных.
Рисунок
Использование
-
Этот инструмент разработан для использования после инструмента Сгенерировать связи метода Подгонка границ (Generate Edgematch Links). Он пространственно уравнивает формы входных линейных объектов на основе входных объектов связей, созданных с помощью инструмента Сгенерировать связи метода Подгонка границ (Generate Edgematch Links), чтобы они правильно соединились со смежными линейными объектами вдоль граничных областей. Входные объекты связей должны иметь поля SRC_FID и ADJ_FID.
Этот инструмент вычисляет новые местоположения соединений, используя связи метода подгонки границ, и затем изменять соответствующие объекты, так что они будут заканчиваться в новых местоположениях. На основе предоставленных исходных данных (Входные объекты (Input Features), Смежные объекты (Adjacent Features) или Объекты границ (Border Features)) будут определены новые местоположения соединений и относящиеся к ним объекты уравнены соответствующим образом. Это уравнивание поможет убедиться, что сопоставленные объекты соединены, как описано ниже:
- Если вы предоставляете только Входные объекты (Input Features), то конечные точки связей метода подгонки границ будут использоваться в качестве новых местоположений соединений. Входные линии, связанные со связями метода подгонки границ (то есть идентификаторы объектов которых соответствуют значениям SRC_FID для связей), будут уравнены таким образом, что они будут заканчиваться в конечных точках связей. Это гарантирует, что они будут соединены с нужными смежными объектами, которые должны были участвовать в создании связей метода подгонки границ.
- Если вы предоставляете Входные объекты (Input Features) и Смежные объекты (Adjacent Features), то средние точки связей метода подгонки границ будут использоваться в качестве новых местоположений соединений. Как связанные входные линии, так и связанные смежные линии (то есть линии, идентификаторы объектов которых соответствуют значениям ADJ_FID для связей), будут уравнены таким образом, что они будут заканчиваться и соединяться в средних точках связей.
- Если вы добавляете Объекты границ (Border Features), вы обязаны также указать Смежные объекты (Adjacent Features). Инструмент находит местоположения на границах, которые находятся ближе всего к серединам связей, в качестве новых местоположений соединений. Входные линии и смежные линии, связанные со связями метода подгонки границ, будут уравнены таким образом, что они будут соединяться в местоположениях границ.
Параметр Метод (Method) имеет три опции подгонки границ для уравнивания объектов. Каждая опция применяется либо только ко входным объектам, либо ко входным объектам и смежным объектам, как рассмотрено выше.
- MOVE_ENDPOINT – перемещает конечную точку входной линии на новое местоположение соединения.
- ADD_SEGMENT – добавляет прямой сегмент к конечной точке входной линии, так что он заканчивается на новом местоположении соединения.
- ADJUST_VERTICES – уравнивает конечную точку линии в новое местоположение соединения. Оставшиеся вершины также уравниваются таким образом, что изменение их позиций будет постепенно уменьшаться к противоположному концу линии.
Этот инструмент изменяет входные данные. Более подробно о стратегиях предотвращения неожиданных изменений данных см. в разделе Инструменты, не создающие выходных данных (Tools with no outputs).
Все входные данные должны быть в одной системе координат.
Синтаксис
Параметр | Объяснение | Тип данных |
in_features |
Входные линейные объекты для уравнивания. | Feature Layer |
in_link_features |
Входные линейные объекты, представляющие связи метода подгонки границ. | Feature Layer |
method (дополнительно) |
Метод подгонки границ должен использоваться для уравнивания только входных объектов, либо входных объектов и смежных объектов, к их новым местоположениям соединений.
| String |
adjacent_features (дополнительно) |
Линейные объекты, которые уравниваются с входными объектами. Если выбрана данная опция, то входные линии и смежные линии будут уравнены таким образом, что они будут заканчиваться в новых местоположениях соединений: либо в средних точках связей метода подгонки границ, либо в местоположениях, ближайших к средним точкам связей на объектах границ (если выбрано). Вы должны предоставить смежные объекты, если вы предоставляете объекты границ. | Feature Layer |
border_features (дополнительно) |
Линейные или полигональные объекты, представляющие границы между входными и смежными объектами. Если вы указываете объекты границ, вы обязаны также указать смежные объекты. входные линии и смежные линии будут уравнены таким образом, что они будут соединяться в новых местоположениях, ближайших к средним точкам связей на объектах границ. | Feature Layer |
Пример кода
Пример скрипта Python для выполнения функции EdgematchFeatures с запуском из окна Python.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.EdgematchFeatures_edit("cityA_Roads.shp", "em_Links.shp"
"MOVE_ENDPOINT")
Пример скрипта Python для выполнения функции EdgematchFeatures в автономном режиме.
# 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
# might not be desired; they are finally used to adjust input features
# (a copy is made) to connect with the matched adjacent feautures.
# Author: Esri
# -----------------------------------------------------------------------
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.overwriteOutput = True
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.GenerateEdgematchLinks_edit(inFeatures, adjFeatures, gelOutput, search_distance, match_fields)
# ====================================================================================
# Note 1: The result of GenerateEdgematchLinks may contain errors; see tool reference.
# Inspection and editing may be necessary to ensure correct links before using
# them for edgematching.
#
# One of the possible errors are undesired 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.Intersect_analysis(gelOutput, qaLocations, "", "", "POINT")
# Delete coincident points
arcpy.DeleteIdentical_management(qaLocations, "Shape")
# ====================================================================================
# Note 2: At this point you can manually inspect locations in qaLocations; delete or
# modify links as needed.
# ====================================================================================
# Make a copy of the inFeatures for edgematching
inFeature_Copy = inFeatures + "_Copy"
arcpy.CopyFeatures_management(inFeatures, inFeature_Copy)
# Use the links to adjust the copy of the input features
arcpy.EdgematchFeatures_edit(inFeature_Copy, gelOutput, "MOVE_ENDPOINT")