Уплотнить (Редактирование)

Сводка

Добавляет вершины вдоль линейных и многоугольных объектов. Инструмент произведет замену отрезков кривых (кривых Безье, дуг окружности, дуг эллипса) на линейные сегменты с множеством вершин.

Иллюстрация

Кривая уплотняется в линейные сегменты с учетом Смещения, Расстояния или Угла
Кривая уплотняется в линейные сегменты с учетом Смещения, Расстояния или Угла.

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

    Внимание:

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

  • Прямые линейные сегменты будут уплотнены со значением параметра Расстояние. Кривые будут упрощены посредством добавления вершин по значению параметров Расстояние, Максимальный угол отклонения или Отклонение максимального сдвига.

  • Уплотнение производится посегментно.

  • При запуске инструмента Уплотнить может быть использован только один метод уплотнения.

  • Пространственная привязка данных очень важна для корректной работы инструмента. Уплотняйте данные с использованием нужной системы координат для поддержания корректной формы пространственных объектов.

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

  • Максимальное число вершин управляет параметром максимального количества вершин в каждом уплотненном выходном сегменте. Если для операции уплотнения требуется больше вершин, чем заданное значение, сегменты будут выровнены таким образом, чтобы количество вершин не было превышено (+/- 1). Если указано некорректное значение (0 или меньше), то ограничения для линейных сегментов не будет , а для изогнутых сегментов инструмент будет использовать значение по умолчанию - 12000.

    Настройка Максимальное число вершин приведет к тому, чтобы заданное значение использовалось для определения максимального числа вершин как для прямых, так и для изогнутых сегментов.

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

  • При уплотнении с помощью параметра Отклонение максимального сдвига, если входные объекты содержат дуги окружности, то максимальное значение сдвига будет ограничено таким образом, чтобы угол между двумя последовательными линейными сегментами в выходных данных не превышал десяти градусов. Значение этого угла может быть превышено, если вы используете параметр Максимальный угол отклонения.

Синтаксис

Densify(in_features, {densification_method}, {distance}, {max_deviation}, {max_angle}, {max_vertex_per_segment})
ParameterОбъяснениеТип данных
in_features

Класс пространственных объектов линий или полигонов, объекты которого будут уплотнены.

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

Определяет используемый метод уплотнения.

  • DISTANCEПараметр distance будет применен для кривых и прямых линий. Это значение по умолчанию.
  • OFFSETПараметр max_deviation будет применен к кривым.
  • ANGLEПараметр max_angle будет применен к кривым.
String
distance
(Дополнительный)

Максимальное линейное расстояние между вершинами. Это расстояние всегда будет использоваться для линейных сегментов, а также для упрощения кривых. Значением по умолчанию является X,Y-допуск данных.

Linear Unit
max_deviation
(Дополнительный)

Максимальное расстояние, на которое может быть удален выходной сегмент от исходного. Этот параметр влияет только на кривые. Значением по умолчанию является функция допуска данных X,Y.

Linear Unit
max_angle
(Дополнительный)

Максимальный угол, на который выходные объекты могут отклоняться от входных. Допустимым является диапазон от 0 до 90. Значение по умолчанию 10. Этот параметр влияет только на кривые.

Double
max_vertex_per_segment
(Дополнительный)

Максимальное число вершин, разрешенное в сегменте. Если ничего не указано или задано некорректное значение (0 или меньше), то для прямых сегментов ограничений не будет, а для кривых будет использоваться ограничение по умолчанию - 12000.

Long

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

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

Уплотненные входные объекты.

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

Пример кода

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

Пример скрипта окна Python для использования функции Densify в режиме прямого запуска.

import arcpy
arcpy.Densify_edit("C:/data.gdb/lines", "ANGLE", "", "", "0.75")
Densify, пример 2 (автономный скрипт)

Автономный скрипт, в котором функция Densify используется как часть рабочего процесса, где применяется инструмент редактирования Snap.

# Name: Snap.py
# Description: Snap climate regions boundary to vegetation layer
#              boundary to ensure common boundary is coincident
# import system modules 
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Make backup copy of climate regions feature class, 
# since modification with the Editing tools below is permanent.
climateBackup = "backups/climate.shp"
arcpy.CopyFeatures_management('climate.shp', climateBackup)
# Densify climate regions feature class to make sure there are enough vertices 
# to match detail of vegetation layer when layers are snapped.
arcpy.Densify_edit('climate.shp', "DISTANCE", "10 Feet") 
# Snap climate regions feature class to vegetation layer vertices and edge.
# First, snap climate region vertices to the nearest vegetation vertex within 
# 30 Feet. Second, snap climate region vertices to the nearest vegetation edge 
# within 20 Feet.
snapEnv1 = ["Habitat_Analysis.gdb/vegtype", "VERTEX", "30 Feet"]    
snapEnv2 = ["Habitat_Analysis.gdb/vegtype", "EDGE",   "20 Feet"]       
arcpy.Snap_edit('climate.shp', [snapEnv1, snapEnv2])

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

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

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