Слияние фрагментов дорог (Merge Divided Roads) (Картография)
Краткая информация
Создает один линейный объект дороги вместо совпадающей пары разделенных дорожных полос.
Согласованные пары линий дорог или проезжих частей сливаются в случае, если они имеют одинаковый класс дорог, проходят примерно параллельно друг другу и лежат внутри допуска слияния. Класс дорог указывается в параметре Поле слияния (Merge Field). Все неслитые дороги, содержащиеся во входном наборе, копируются в выходной класс объектов.
Более подробно о том, как работает инструмент Слияние фрагментов дорог (Merge Divided Roads)
Этот инструмент обычно используется для упрощения дорог при переходе от более крупных к более мелким масштабам, в которых целесообразным является показ шоссе с разделительной полосой и бульваров одной линией. В средних масштабах может быть предпочтительным сохранение разделенных участков дорог в качестве отдельных объектов. В таком случае можно использовать инструмент Решить конфликты дорог (Resolve Road Conflicts, чтобы убедиться, что символы дорожных полос отображаются без каких-либо конфликтов. Оба инструмента - и Решить конфликты дорог (Resolve Road Conflicts), и Слияние фрагментов дорог (Merge Divided Roads) - могут быть запущены по отношению к одному и тому же набору дорог; в этом случае рекомендуется сначала запускать инструмент Слияние фрагментов дорог (Merge Divided Roads).
Программа выдаст предупреждение, если входные объекты не спроецированы. Этот инструмент использует линейные единицы измерения расстояний, поэтому его работа с не спроецированной системой координат может привести к некорректным результатам. Настоятельно рекомендуем вам использовать для этого инструмента спроецированные данные для получения корректных результатов. Если координатная система отсутствует или неизвестна, инструмент выдаст ошибку и прекратит работу.
Рисунок
Использование
-
Выходной класс объектов содержит линейные объекты, отображающие слитые дороги, а также копии всех неслитых входных объектов. Слитые объекты получат значения атрибутов одного из двух исходных объектов.
-
Входные объекты, имеющие нулевое значение параметра Поле слияния (Merge Field), являются заблокированными и не будут слиты даже в том случае, если соседние объекты не являются заблокированными.
Дополнительный параметр Выходной класс сдвинутых пространственных объектов (Output Displacement Feature Class) создает класс полигональных объектов, которые показывают величину и направление имеющегося сдвига. Этот класс пространственных объектов может быть использован только для визуальной проверки, пространственных запросов или в качестве входных данных для инструмента Передать сдвиг (Propagate Displacement).
Если входной слой пространственных объектов отображается с использованием представления, все переопределения объекта, связанные с этим представлением, будут использованы данным инструментом в качестве входной геометрии, а соответствующая геометрия объекта, находящаяся в поле Форма (Shape), будет проигнорирована. Выходной класс пространственных объектов будет содержать представление класса пространственных объектов, но вся геометрия будет сохранена в поле Shape, не отменяя представления объекта.
Обработка больших наборов данных дорог может вызвать превышение ограничений использования памяти. В таком случае попытайтесь разделить входные данные на части, определив соответствующий полигональный класс пространственных объектов с помощью параметра среды +++Частичные объекты (Partition Features). Части данных, разделенные между собой границами, будут последовательно обрабатываться отдельно друг от друга. Полученные классы объектов будут бесшовными и единообразными между границами частей. Более подробные сведения об использовании этого инструмента в сочетании с разделением на части см. в разделе Как работает инструмент Слияние фрагментов дорог (Merge Divided Roads).
Синтаксис
Параметр | Объяснение | Тип данных |
in_features |
Входные линейные объекты, содержащие фрагменты дорог, разделенных на полосы, которые должны быть слиты в единые выходные линейные объекты. | Feature Layer |
merge_field |
Поле, содержащее информацию о типах дорог. Только ближайшие параллельные дороги, принадлежащие к одному классу, будут слиты между собой. Значение, равное нулю, делает объект «закрытым», предотвращая его участие в слиянии. | Field |
merge_distance |
Минимальное расстояние между объектами в указанных единицах измерения, в пределах которого объединяются принадлежащие одному классу, близкие к параллельным линейные объекты. Расстояние должно быть больше нуля. Если единицами измерения являются пункты, миллиметры, сантиметры или дюймы, значение рассматривается как указанное в единицах измерения страницы и принимается во внимание масштаб карты. | Linear unit |
out_features |
Выходной класс объектов, содержащий слитые в одну линию объекты, а также все оставшиеся неслитые объекты дорог. | Feature Class |
out_displacement_features (дополнительно) |
Выходные полигональные объекты, содержащие угол и направление сдвига дорог, которые могут быть использованы инструментом Распространить сдвиг для сохранения пространственных отношений. | Feature Class |
Пример кода
Приведенное ниже окно Python демонстрирует непосредственное использование инструмента MergeDividedRoads.
import arcpy
from arcpy import env
env.workspace = "C:/data"
env.referenceScale = "50000"
arcpy.MergeDividedRoads_cartography("roads.lyr", "level", "25 meters",
"C:/data/cartography.gdb/transportation/merged_roads",
"C:/data/cartography.gdb/transportation/displacement")
Данный автономный скрипт показывает пример использования инструмента.
# Name: MergeDividedRoads_standalone_script.py
# Description: Resolves symbology conflicts between roads within a specified distance of each other by snapping them together
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
env.referenceScale = "50000"
# Set local variables
in_features = "roads.lyr"
merge_field = "level"
collapse_distance = "25 meters"
out_features = "C:/data/cartography.gdb/transportation/merged_roads"
out_displacement_features = "C:/data/cartography.gdb/transportation/displacement"
# Execute Merge Divided Roads
arcpy.MergeDividedRoads_cartography(in_features, merge_field, collapse_distance, out_features, out_displacement_features)
Параметры среды
- Базовый масштаб (Reference Scale)
Базовый масштаб используется только в случае, если параметр Расстояние слияния (Merge Distance) введен в единицах измерения страницы. Когда доступен базовый масштаб, обнаружение ложных тупиков основывается на разделении объектов на участки длиной 0,5 мм в масштабе карты. В противном случае используется показатель, равный двойному допуску пространственной привязки.