Об инструменте Слияние фрагментов дорог (Merge Divided Roads tool)
Инструмент Слияние фрагментов дорог (Merge Divided Roads) объединяет сегменты дорог, проходящих значительное расстояние параллельно друг другу, в одну центральную линию.
Согласованные пары линий дорог или проезжих частей сливаются в случае, если они имеют одинаковый класс дорог, проходят примерно параллельно друг другу и лежат внутри допуска слияния. Класс дорог указывается в параметре Поле слияния (Merge Field). Все неслитые дороги, содержащиеся во входном наборе, копируются в выходной класс объектов.
Этот инструмент обычно используется для упрощения дорог при переходе от более крупных к более мелким масштабам, в которых целесообразным является показ шоссе с разделительной полосой и бульваров одной линией. В средних масштабах может быть предпочтительным сохранение разделенных участков дорог в качестве отдельных объектов. В таком случае можно использовать инструмент Решить конфликты дорог (Resolve Road Conflicts, чтобы убедиться, что символы дорожных полос отображаются без каких-либо конфликтов. Оба инструмента - и Решить конфликты дорог (Resolve Road Conflicts), и Слияние фрагментов дорог (Merge Divided Roads) - могут быть запущены по отношению к одному и тому же набору дорог; в этом случае рекомендуется сначала запускать инструмент Слияние фрагментов дорог (Merge Divided Roads).
Вопросы подготовки данных
Этот инструмент оптимизирован для пространственных отношений, связывающих объекты дорожной сети. Если инструмент используется для обработки других тем, могут быть получены неожиданные результаты. Очень важным является корректное определение геометрии входных объектов, поскольку на ее основе инструмент сохраняет существующие внутри набора дорог отношения. Примите во внимание следующие требования и рекомендации к входным данным:
Простые объекты: входные данные не могут содержать составные объекты. Для преобразования объектов в простые следует использовать инструмент Составной в простые (Multipart To Singlepart) или создать топологию с правилом для линейных объектов Должны состоять из одной части (Must Be Single Part).
Общие сегменты: Входные объекты не должны перекрываться друг с другом, то есть иметь общие сегменты. Для решения этих проблем создайте топологию с правилами для линейных объектов Не должны перекрываться (Must Not Overlap) и Не должны перекрывать сами себя (Must Not Self-Overlap). Если инструмент запущен с использованием нескольких входных слоев, создайте топологию с правилом Не должны перекрываться с (Must Not Overlap With). Если обнаружены общие сегменты, инструмент выдаст предупреждение, но продолжит работу. Идентификаторы ObjectID пространственных объектов с общими сегментами записываются в log-файл с именем вида SharedGeom#.txt, где # – число, возрастающее с созданием каждого log-файла.
Самопересекающиеся объекты: Использование входных линейных объектов, имеющих самопересечения или одинаковые конечную и начальную точку, может привести к некорректным результатам. Для выявления таких областей создавайте топологию с использованием правила Не должны пересекать сами себя (Must Not Self-Intersect). Если обнаружены самопересекающиеся объекты, инструмент выдаст предупреждение и продолжит работу. Идентификаторы ObjectID самопересекающихся объектов записываются в log-файл с именем вида SelfIntersect#.txt, где # – число, возрастающее с созданием каждого log-файла.
Геометрия ниже допуска XY: В некоторых случаях среди данных могут встретиться пространственные объекты, размеры которых ниже допуска XY, указанного в документе карте или в параметрах среды инструмента. Если обнаружены объекты, имеющие длину меньше допуска, инструмент выдаст предупреждение, и такие объекты не будут им обрабатываться. Идентификаторы ObjectID пространственных объектов с геометрией ниже допуска записываются в файл журнала с именем вида EmptyGeom#.txt, где # – число, возрастающее с созданием каждого файла журнала.
Пустая или нулевая геометрия: Входные пространственные объекты должны иметь корректную геометрию. Если обнаружены объекты, имеющие нулевую длину, инструмент выдаст предупреждение, а эти объекты не будут приниматься во внимание инструментом. Идентификаторы ObjectID объектов с пустой или нулевой геометрией записываются в log-файл с именем вида EmptyGeom#.txt, где # – число, возрастающее с созданием каждого log-файла. При необходимости, для восстановления таких объектов можно применить инструмент Восстановить геометрию (Repair Geometry).
Ложные тупики: Ложный тупик – это сегмент, который не соединен ни с каким другим, но визуально кажется соединенным при отображении на карте в выходном масштабе. Это могут быть участки, на территории которых объекты визуально кажутся соединенными, хотя на самом деле не соединены между собой. Если вы запустите инструмент без предварительной коррекции присоединения, в результатах применения инструмента вы можете неожиданно получить не присоединенные никуда объекты. Каждая конечная точка, лежащая в пределах 0.5 мм от другого сегмента линии, определяется в качестве принадлежащей ложному тупику, с учетом масштаба карты. Если обнаружены ложные тупики, инструмент выдает предупреждение и продолжает работу. Обнаруженные ложные тупики записываются в log-файл с именем вида DeadEnd#.txt, где # – число, возрастающее с созданием каждого log-файла.
Если базовый масштаб недоступен, для определения ложных тупиков используется двукратное значение допуска пространственной привязки.
Расположение файлов журнала, которые создаются в случаях, когда программа выдает предупреждения или ошибки, может быть различным, в зависимости от используемой вами операционной системы:
- В системе Windows XP файлы журнала записываются в папку C:\Documents and Settings\<user name>\Application Data\ESRI\GeoProcessing.
- В системах Windows Vista и Windows 7 файлы журнала записываются в папку C:\Users\<user name>\AppData\Local\ESRI\GeoProcessing.
Отслеживание слитых объектов: для определения, какие объекты были признаны объектами одного класса, проходящими значительное расстояние параллельно друг другу, добавьте к классу входных данных поле MDR_TYPE (короткое или длинное целое число). Это поле будет скопировано в выходной класс объектов. Во входном классе объектов совпадающие пары дорог, которые будут слиты, обозначаются кодом MDR_TYPE = 1 и MDR_TYPE = -1. В выходном классе объектов полученная слитая дорога обозначается кодом MDR_TYPE = 1. Вы можете использовать эту информацию для проверки качества управления или для выявления объектов, которые нуждаются в других условных обозначениях для более правильного описания.
Базовый масштаб: убедитесь, что заданный базовый масштаб соответствует параметру Расстояние слияния (Merge Distance) в единицах измерения страницы (точки, дюймы, мм, см).
Для получения системы координат используется параметр среды Картографическая система координат (Cartographic coordinate system), если эта переменная установлена. В противном случае, если инструмент запущен на переднем плане в ArcMap, используется система координат фрейма данных. Если не доступен ни один из этих параметров, используется система координат входных слоев.
Рекомендации по использованию
Этот инструмент наиболее эффективен в случае его использования в сочетании с другими инструментами генерализации и разрешения графических конфликтов. Ниже представлены несколько советов, которые помогут вам использовать эти инструменты совместно с другими в вашем рабочем процессе:
Создайте надлежащую классификацию дорог. Параметр Поле слияния (Merge Field) используется для создания уникальных классов дорог. Это поле может полностью или частично совпадать с полем, значения из которого используются для показа дорог с помощью символов. Параллельные дороги, нуждающиеся в слиянии, должны иметь одинаковое ненулевое целое значение в этом поле. Если хотя бы один из двух параллельных объектов имеет нулевое значение в Поле слияния, они слиты не будут.
Определите подходящее расстояние слияния. Если вы не используете картографические спецификации, в которых отражено, насколько близко друг к другу должны располагаться объекты для их слияния, вы можете использовать инструмент Измерить (Measure) панели Инструменты (Tools) в ArcMap с целью определения среднего расстояния между параллельными полосами. Используйте значение, несколько меньшее параметра Расстояние слияния (Merge Distance).
Сливайте только особенные объекты. Для получения наилучших результатов запускайте инструмент только по отношению к нескольким выделенным объектам, например, шоссе с разделительной полосой.Не используйте набор пространственных данных целиком. Это уменьшит время обработки и позволит вам обрабатывать больший экстент данных. Для этого рабочего процесса очень важным является восстановление присоединенности дорог, которые будут слиты. Это можно сделать с использованием этого инструмента с дополнительным параметром Выходной класс пространственных объектов смещения (Output Displacement Feature Class). Используйте класс пространственных объектов смещения в качестве входного, наряду с использованием слитых дорог для инструмента Распространить сдвиг (Propagate Displacement) с целью восстановления этих соединений. Этот класс пространственных объектов смещения может также быть использован для инструмента Распространить сдвиг (Propagate Displacement) с целью восстановления пространственных отношений других тем, положение которых соотносится со слитыми дорогами.
- Понимание природы входных объектов. Слитые объекты получат атрибутику, включая значения Z и значения M, от одного из исходных объектов. Все выходные объекты, даже неслитые, могут быть подвержены некоторому упрощению геометрии линий во время процесса слияния. Допуск такого упрощения составляет одну десятую значения параметра Расстояние слияния (Merge Distance).
Используйте разрешения конфликтов для объектов, близких к параллельным. Возможно появление на вашей карте областей, где вы бы хотели оставить несколько объектов, но эти объекты располагаются слишком близко друг к другу для того, чтобы корректно отображаться с использованием символов в выходном масштабе. Используйте инструмент Решить конфликты дорог (Resolve Road Conflicts) для отдаления конфликтующих дорог друг от друга. Если вы используете оба этих инструмента по отношению к одному и тому же набору дорог, предпочтительным является сначала запускать инструмент Слияние фрагментов дорог (Merge Divided Roads), а затем - инструмент Решить конфликты дорог (Road Conflicts).
Разделение больших наборов данных
Этот инструмент, прежде чем определять конечное состояние каждого из пространственных объектов, принимает во внимание также и смежные с ним объекты. При использовании большого объема входных данных (или большого количества отдельных слоев) может произойти превышение ограничений использования оперативной памяти. Для того, чтобы обойти эти ограничения, можно активировать разделение данных при работе с этим инструментом, указав класс объектов раздела в параметре среды геообработки Картографические разделы (Cartographic Partitions). Разделение позволяет инструменту обрабатывать данные последовательно по небольшим удобным частям. Инструмент принимает на вход пространственные объекты, ограниченные одним из полигонов раздела, а также дополнительные данные из буферной зоны вокруг него. По мере работы инструмента, все остальные данные также поступают в обработку. Таким образом, поддерживается целостность всех объектов, попавших на границу раздела, и бесшовность полученного в результате класса объектов.
При обработке частичных объектов с помощью инструмента Слияние фрагментов дорог (Merge Divided Roads) полученные дороги из каждой части добавляются в класс выходных объектов. Дороги будут разделены по ребрам частей. Если создаются слитые дороги, они замыкаются на общий узел на границе части. При обработке система стремится обеспечить максимально единообразные результаты между границами частей. Однако, если речь идет о геометрически сложных или плотно заполненных участках, возможны ситуации, в которых дорога будет замкнута на неправильную дорогу, или дорога будет слита в одной части, но останется неслитой в другой части. Добавив дополнительные поля (короткие или длинные целые числа) к классу входных объектов, как показано ниже, можно опрашивать и отображать потенциальные проблемы. Эти поля будут отображаться и заполняться в классе выходных объектов.
- MDR_TYPE: значение 1 обозначает слитую дорогу.
- Значение 0 обозначает, что объект не подлежит слиянию.
- Значение -1 обозначает, что объект параллелен другому объекту с левой стороны (если определять направление объекта от исходного узла к узлу назначения).
- Значение 1 обозначает, что объект параллелен другому объекту с правой стороны (если определять направление объекта от исходного узла к узлу назначения).
- Значение 2 обозначает, что объект параллелен другим объектам с обеих сторон.
- MDR_SNAP:
- значение 0 обозначает, что инструменту не пришлось выбирать нужный вариант привязки.
- Значение 1 обозначает, что для обеспечения целостности на границе между частями пришлось выбрать привязку, превышающую допуск.
- Значение 2 обозначает, что у инструмента возникли трудности при определении подходящего узла для привязки в неоднозначной конфигурации. Такие участки необходимо проверить или изменить для обеспечения непрерывности слитых дорог при переходе через границы частей.
Если входной объект дороги точно следует границе части (например, если дорога проходит по границе области, и области положены в основу разделения на части), то дорога будет дважды отображаться в выходных данных: по одному разу для каждой из обработанных смежных частей.
Связанные разделы
- Слияние фрагментов дорог (Merge Divided Roads)
- Решить конфликты дорог (Resolve Road Conflicts)
- Свернуть детализацию дорог (Collapse Road Detail)
- Распространить сдвиг (Propagate Displacement)
- Совместить двойные линии в центральную линию (Collapse Dual Lines To Centerline)
- Разрешение конфликтов и Генерализация
- Автоматизирование урегулирования конфликтов и процессов генерализации с процессами геообработки
- Генерализация больших наборов данных с использованием сегментов
- Создать картографические разделы