Удалить объекты (Управление данными)

Краткая информация

Удаляет все пространственные объекты или выбранный их поднабор из входного набора данных.

Если входные объекты принадлежат классу пространственных объектов, то будут удалены все строки. Если входные объекты находятся в слое без активной выборки, то будут удалены все объекты.

Использование

  • Если для этого инструмента был выбран входной слой с выборкой, то будут удалены только выбранные объекты. Чтобы удалить определенные объекты из класса пространственных объектов, конвертируйте класс в слой с помощью инструмента Создать векторный слой, или добавив его на карту. Выборку затем можно применить с помощью инструментов Выбрать в слое по атрибуту или Выбрать в слое по расположению, а также построить запрос к слою на карте или интерактивно выбрать объекты инструментами выборки группы Выборка на вкладке Карта.

  • Если в качестве входных данных подается слой, у которого отсутствует выборка, то будут удалены все объекты слоя. Если класс объектов является входными данными, удаляются все объекты.

    Примечание:

    Удаление всех строк из класса пространственных объектов при их большом количестве может занять много. Если вы желаете удалить все строки из такого класса пространственных объектов, воспользуйтесь лучше инструментом Сократить таблицу. Обратитесь к документации инструмента Сократить таблицу и обратите внимание на предостережения по его использованию.

  • Этот инструмент удаляет геометрию и атрибуты Входных объектов.

  • Инструмент использует в работе параметр среды Экстент. Удаляются только те объекты, которые частично или полностью расположены внутри выходного экстента, указанного в параметрах среды. Если входной слой имеет выборку, то будут удалены только те объекты из выборки, которые частично или полностью расположены внутри этого выходного экстента.

Параметры

ПодписьОписаниеТип данных
Входные объекты

Класс пространственных объектов, шейп-файл или слой с объектами, которые требуется удалить.

Feature Layer

Производные выходные данные

ПодписьОписаниеТип данных
Выходной класс пространственных объектов

Обновленный класс пространственных объектов.

Feature Layer

arcpy.management.DeleteFeatures(in_features)
ИмяОписаниеТип данных
in_features

Класс пространственных объектов, шейп-файл или слой с объектами, которые требуется удалить.

Feature Layer

Производные выходные данные

ИмяОписаниеТип данных
out_feature_class

Обновленный класс пространственных объектов.

Feature Layer

Пример кода

Пример DeleteFeatures 1 (окно Python)

В следующем скрипте окна Python показано, как используется функция DeleteFeatures в режиме прямого запуска.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.management.CopyFeatures("majorrds.shp", "C:/output/output.gdb/majorrds2")
arcpy.management.DeleteFeatures("C:/output/output.gdb/majorrds2")
Пример DeleteFeatures 2 (автономный скрипт)

Следующий автономный скрипт демонстрирует, как использовать функцию DeleteFeatures для удаления объектов на основе выражения.

# Name: DeleteFeatures_Example2.py
# Description: Delete features from a feature class based on an expression
 
# Import system modules
import arcpy
 
# Set environment settings
arcpy.env.workspace = "C:/data/airport.gdb"
 
# Set local variables
inFeatures = "parcels"
outFeatures = "C:/output/output.gdb/new_parcels"
tempLayer = "parcelsLayer"
expression = arcpy.AddFieldDelimiters(tempLayer, "PARCEL_ID") + " = 'Cemetery'"
 

# Run CopyFeatures to make a new copy of the feature class
arcpy.management.CopyFeatures(inFeatures, outFeatures)
 
# Run MakeFeatureLayer
arcpy.management.MakeFeatureLayer(outFeatures, tempLayer)
 
# Run SelectLayerByAttribute to determine which features to delete
arcpy.management.SelectLayerByAttribute(tempLayer, "NEW_SELECTION", 
                                        expression)
 
# Run GetCount and if some features have been selected, then 
#  run DeleteFeatures to remove the selected features.
if int(arcpy.management.GetCount(tempLayer)[0]) > 0:
    arcpy.management.DeleteFeatures(tempLayer)

Параметры среды

Особые случаи

Экстент

Удаляются только объекты, расположенные внутри или экстента или на его пересечении.