Генерализовать (Редактирование)

Сводка

Упрощает входные объекты на основе заданного максимального допуска смещения. Выходные объекты будут содержать набор исходных входных вершин.

Иллюстрация

Линия будет упрощена в пределах максимально допустимого значения сдвига
Линия будет упрощена в рамках указанного максимального значения сдвига

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

    Внимание:

    Этот инструмент изменяет входные значения. Более подробно о стратегиях предотвращения нежелательных изменений данных см. в разделе Инструменты, не создающие выходных данных.

  • В этом инструменте используется такой же алгоритм, что и в методе точечного удаления при использовании инструмента Упростить линию (алгоритм упрощения Дугласа-Пьюкера). Инструмент Упростить линию имеет больше параметров и создает новые выходные данные, поскольку этот инструмент изменяет входной класс пространственных объектов.

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

  • Кривые Безье, дуги окружности и сегменты эллиптических дуг будут преобразованы в прямые линейные сегменты.

  • Данный инструмент не производит удаление записей или объектов. Если допуск больше многоугольника, многоугольник будет уменьшен до трех вершин.

Синтаксис

Generalize(in_features, {tolerance})
ParameterОбъяснениеТип данных
in_features

Полигональные или линейные объекты для генерализации.

Feature Layer
tolerance
(Дополнительный)

Допуск производит установку максимально допустимого сдвига, который, по сути и определяет степень генерализации. Данное значение ограничивает расстояние, на которое выходные объекты могут быть сдвинуты по сравнению с исходными. Вы можете выбрать произвольную единицу измерения. По умолчанию используются единицы объектов.

Linear Unit

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

NameОбъяснениеТип данных
out_feature_class

Обновленные входные объекты

Класс пространственных объектов

Пример кода

Generalize, пример 1 (окно Python)

Окно Python скрипта с примером использования функции Generalize в прямом режиме:

import arcpy
arcpy.env.workspace = "C:\data\data.gdb"
arcpy.Generalize_edit("zones", "10 Feet")
Generalize, пример 2 (автономный скрипт)

Ниже приводится автономный скрипт с примером использования функции Generalize в рабочем процессе, когда объекты сначала упрощаются, а потом выполняется их буферизация:

# Name: BufferZones.py
# Purpose: Simplify features using the Generalize tool and then Buffer them
# Import script modules
import arcpy
# Set the workspace
arcpy.env.workspace = "C:/data/data.gdb"
# Set local parameters
inFeatures = "zones"
gTolerance = "4 Feet"
copFeatures = "zones_cp"
bufDist = "50 Miles"
bufOutput = "zones_buff"
# Since Generalize permanently updates the input, first make a copy of the 
# original feature class
arcpy.CopyFeatures_management (inFeatures, copFeatures)
# Use the Generalize tool to simplify the Buffer input to shorten Buffer 
# processing time
arcpy.Generalize_edit(copFeatures, gTolerance)
# Buffer the output
arcpy.Buffer_analysis(copFeatures, bufOutput, bufDist)

Информация о лицензиях

  • Basic: Нет
  • Standard: Да
  • Advanced: Да

Связанные разделы