Удаление (Управление данными)
Краткая информация
Удаляет полигоны путем слияния их с соседними полигонами, имеющими самую большую площадь или самую длинную общую границу. Инструмент Удаление (Eliminate) часто используется для удаления небольших осколочных полигонов, которые являются результатом таких операций наложения, как Пересечение (Intersect) или Объединение (Union).
Рисунок
Использование
-
Пространственные объекты, которые будут удалены, определяются по выборке, применяемой к полигональному слою. Выборка должна быть задана в предыдущем шаге с помощью инструмента Выбрать в слое по атрибуту (Select Layer by Attribute), инструмента Выбрать в слое по расположению (Select Layer by Location) или путем запроса слоя карты в ArcMap.
Только выбранные полигоны будут объединены с соседним невыбранным полигоном (путем удаления общей границы). Выбранный полигон не будет объединен с соседним невыбранным полигоном.
-
Входной слой (Input Layer) должен содержать выборку, в противном случае инструмент Удаление (Eliminate) не выполнится.
-
Исключающее выражение (Exclusion Expression) и Исключающий слой (Exclusion Layer) не являются взаимоисключающими и могут использоваться вместе для обеспечения полного контроля над удаляемыми объектами.
Синтаксис
Параметр | Объяснение | Тип данных |
in_features |
Слой, полигоны которого будут объединены с соседними полигонами. | Feature Layer |
out_feature_class |
Создаваемый класс пространственных объектов. | Feature Class |
selection (дополнительно) |
Опция определяет, какой метод будет использован для удаления пространственных объектов.
| Boolean |
ex_where_clause (дополнительно) | Выражение SQL, использующееся для указания объектов, которые не будут изменены. Более подробно о синтаксисе SQL смотрите в разделах справки: Литература по SQL для выражений запросов, используемых в ArcGIS. | SQL Expression |
ex_features (дополнительно) |
Входной класс полилинейных или полигональных объектов или слой, определяющие границы полигона, или части входных объектов, которые не нужно удалять. | Feature Layer |
Пример кода
На следующем скрипте окна Python демонстрируется, как использовать инструмент Удаление (Eliminate) с запуском из окна Python в ArcGIS.
import arcpy
arcpy.env.workspace = "C:/data/Portland.gdb/Census"
arcpy.MakeFeatureLayer_management("blockgrp", "blocklayer")
arcpy.SelectLayerByAttribute_management("blocklayer", "NEW_SELECTION",
'"Area_Sq_Miles" < 0.15')
arcpy.Eliminate_management("blocklayer", "C:/output/output.gdb/eliminate_output",
"LENGTH", '"OBJECTID" = 9')
Пример скрипта Python для выполнения функции Удаление (Eliminate).
# Name: Eliminate_Example2.py
# Description: Eliminate features based on a selection.
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/Portland.gdb/Census"
# Set local variables
inFeatures = "blockgrp"
tempLayer = "blocklayer"
expression = '"Area_Sq_Miles" < 0.15'
outFeatureClass = "C:/output/output.gdb/eliminate_output"
exclusionExpression = '"OBJECTID" = 9'
# Execute MakeFeatureLayer
arcpy.MakeFeatureLayer_management(inFeatures, tempLayer)
# Execute SelectLayerByAttribute to define features to be eliminated
arcpy.SelectLayerByAttribute_management(tempLayer, "NEW_SELECTION", expression)
# Execute Eliminate
arcpy.Eliminate_management(tempLayer, outFeatureClass, "LENGTH",
exclusionExpression)