Сводка
Добавляет вершины вдоль линейных и многоугольных объектов. Инструмент произведет замену отрезков кривых (кривых Безье, дуг окружности, дуг эллипса) на линейные сегменты с множеством вершин.
Иллюстрация
Использование
Прямые линейные сегменты будут уплотнены со значением параметра Расстояние. Кривые будут упрощены посредством добавления вершин по значению параметров Расстояние, Максимальный угол отклонения или Отклонение максимального сдвига.
Уплотнение производится посегментно.
При запуске инструмента Уплотнить может быть использован только один метод уплотнения.
Пространственная привязка данных очень важна для корректной работы инструмента. Уплотняйте данные с использованием нужной системы координат для поддержания корректной формы пространственных объектов.
Для каждой вершины исходного объекта, включая точку начала и конца, будет совпадающая вершина в результирующем объекте.
Максимальное число вершин управляет параметром максимального количества вершин в каждом уплотненном выходном сегменте. Если для операции уплотнения требуется больше вершин, чем заданное значение, сегменты будут выровнены таким образом, чтобы количество вершин не было превышено (+/- 1). Если указано некорректное значение (0 или меньше), то ограничения для линейных сегментов не будет , а для изогнутых сегментов инструмент будет использовать значение по умолчанию - 12000.
Настройка Максимальное число вершин приведет к тому, чтобы заданное значение использовалось для определения максимального числа вершин как для прямых, так и для изогнутых сегментов.
Примечание:
Чем больше это значение, тем больше риск того, что объект станет слишком большим. Такие большие и сложные объекты могут снизить производительность при отрисовке. Если же используется слишком низкое значение, то выходной объект может быть искажен очень сильно, что приведет к его нулевой геометрии. Слишком низкие значения также могут привести к созданию некорректных объектов, что скажется на дальнейших операциях анализа.При уплотнении с помощью параметра Отклонение максимального сдвига, если входные объекты содержат дуги окружности, то максимальное значение сдвига будет ограничено таким образом, чтобы угол между двумя последовательными линейными сегментами в выходных данных не превышал десяти градусов. Значение этого угла может быть превышено, если вы используете параметр Максимальный угол отклонения.
Внимание:
Этот инструмент изменяет входные значения. Более подробно о стратегиях предотвращения нежелательных изменений данных см. в разделе Инструменты, не создающие выходных данных.
Синтаксис
Densify(in_features, {densification_method}, {distance}, {max_deviation}, {max_angle}, {max_vertex_per_segment})
Parameter | Объяснение | Тип данных |
in_features | Класс пространственных объектов линий или полигонов, объекты которого будут уплотнены. | Feature Layer |
densification_method (Дополнительный) | Определяет используемый метод уплотнения.
| 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 | Уплотненные входные объекты. | Класс пространственных объектов |
Пример кода
Пример скрипта окна Python для использования функции Densify в режиме прямого запуска.
import arcpy
arcpy.Densify_edit("C:/data.gdb/lines", "ANGLE", "", "", "0.75")
Автономный скрипт, в котором функция 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])
Environments
Информация о лицензиях
- Basic: Нет
- Standard: Да
- Advanced: Да