Сократить линию (Редактирование)

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

Удаляет части линии, которые выходят за пределы указанного расстояния после пересечения линии (висячие линии). Любая линия, которая не касается другой линии в обеих конечных точках, может быть обрезана, но будет удалена только та часть линии, которая проходит после пересечения на указанное расстояние.

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

Иллюстрация

Пример работы инструмента Сократить линию

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

    Внимание:

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

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

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

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

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

  • Этот инструмент не изменяет никаких атрибутов объектов, кроме полей геометрии (длины) в классе объектов базы геоданных.

Параметры

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

Входные линейные объекты для обрезки.

Feature Layer
Длина висячей линии
(Дополнительный)

Линейные сегменты, которые короче, чем указанная длина висячей линии, и которые не касаются другой линии на обоих концах (висячие линии) будут удалены.

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

Linear Unit
Удалить короткие объекты
(Дополнительный)

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

  • Отмечено - удалять короткие отдельно стоящие объекты. Это значение по умолчанию
  • Не отмечено - не удалять короткие отдельно стоящие объекты.
Boolean

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

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

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

Feature Class

arcpy.management.TrimLine(in_features, {dangle_length}, {delete_shorts})
ИмяОписаниеТип данных
in_features

Входные линейные объекты для обрезки.

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

Линейные сегменты, которые короче, чем указанная длина висячей линии, и которые не касаются другой линии на обоих концах (висячие линии) будут удалены.

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

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

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

  • DELETE_SHORTУдаление коротких отдельно стоящих объектов. Это значение по умолчанию
  • KEEP_SHORTЗапрет на удаление коротких отдельно стоящих объектов.
Boolean

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

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

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

Feature Class

Пример кода

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

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.edit.TrimLine("majorrds.shp", "15 Feet", "DELETE_SHORT")
TrimLine, пример 2 (автономный скрипт)

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

# Name: ExtendLine.py
# Description:  Clean up street centerlines that were digitized without 
#                      having set proper snapping environments

# import system modules 
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Make backup copy of streets feature class, since modification with 
#  the Editing tools below is permanent
streets = "majorrds.shp"
streetsBackup = "C:/output/Output.gdb/streetsBackup"
arcpy.management.CopyFeatures(streets, streetsBackup)

# Trim street lines to clean up dangles
arcpy.edit.TrimLine(streets, "10 Feet", "KEEP_SHORT")

# Extend street lines to clean up dangles
arcpy.edit.ExtendLine(streets, "15 Feet", "EXTENSION")