Вы здесь: Технологии Топология Согласование полигональных покрытий

Согласование полигональных покрытий

Голосовать
(0 голосов)

Часто задачей оцифровки является не просто векторизация и атрибутирование тех или иных объектов, а создание полного топологически корректного полигонального покрытия. В Easy Trace Pro специально для этой цели существует несколько полезных инструментов и утилит.

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

Простейший пример. Проложим полигональную дорогу через лес. Строим вдоль дороги Ленточный полигон и вычитаем (вырезаем) полигон из леса.

Хуже обстоит дело, если дорога уже была вырезана до нас. Вот только если её вырезать останутся довольно неприятные щели… Тогда ваши действия должны быть следующими:

  1. Если щели небольшие и Вы - обладатель версии 8.5, то просто используйте утилиту Коррекции топологии. Дорога – опорный слой, Лес – корректируемый, операция – «Согласовывать участки полилиний в радиусе».
  2. Если версия помладше или щели потолще, тогда руками поработать придётся! Вызываем утилиту «Проверка полигонов» и ищем щели. Найденные ошибки – это полигоны щелей на слое _ERRORS_.

    Конечно же, сами они к полигону леса не приклеятся. Надо выбрать редактором лес и в режиме Сумма (E) указать на все «затычки» в щелях. Слой Дорог лучше «заморозить», а то и в него ткнуть недолго…

  3. Перед тем как запускать проверку топологии, неплохо бы применить утилиту Коррекция топологии - даже если в вашей версии она ещё не умеет согласовывать границы. Простое "стягивание вершин в заданном радиусе" может "склеить" самые тонкие и неприятные щели.

Теперь рассмотрим технологию вырезания дороги из леса, которая состоит из следующих этапов:

При наличии у вас версия 8.6 - используем утилиту "Вычитание полигонов".

А вот если версия младше, придётся все делать с помощью инструмента Групповые ножницы следующим образом:

  1. Первое, что следует сделать – точно указать, что будем резать. Погасить все лишние слои и заморозить «режущий» слой. А то он сам себя порежет…

    Или явно отметить слой- «жертву» в списке из панели управления инструментом Групповые ножницы.

  2. Затем надо создать контура обрезки. Если повезёт – просто выбрать контура Групповым редактором и нажать Alt+W.

    Если не повезёт – удерживая Ctrl выбрать контура для обрезки. Лучше делать это в несколько приёмов. А чтобы не запутаться – сделать «режущие» полигоны прозрачными, а подстилающий слой полигонов сплошной заливкой. И сразу будет видно, где уже есть дырка, а где ещё нет…

    Обязательно сделайте копию всей папки проекта, включая каталог DB, перед тем, как что-либо резать. Может сразу и не получится!

Замечание

Что делать если вырезание длится слишком долго?

У вас довольно старая версия. Здесь может помочь только одно – разнесение режущих полигонов по нескольким слоям. Старый алгоритм сравнивает каждый «режущий» полигон с каждой «жертвой». Типичный квадратичный алгоритм. Соответственно, уменьшив число режущих полигонов вдвое, можно сократить время в четыре раза. Ну и так далее…

Как согласовать линейные и полигональное покрытия?

Очень часто граница лесного массива проходит по дороге или руслу реки. Хорошо если полигон леса по этим самым линиям и строился. Тогда проблем нет. Всё и так согласованно. А если и линии и полигоны сами по себе? В этом случае последовательность ваших действий следующая:

  1. Выполняем коррекцию топологии с образованием общих вершин в местах пересечения линий с границами полигонов. (В версии 8.5 можно ещё задать и согласование границ, указав линейные объекты в качестве опорных слоёв.)
  2. Используем трассировщик кривых на слое ЛЕС в режиме «быстрое создание полигона» Горячая клавиша – «H».
  3. Указывая на «щели» курсором-«рукой», создаём полигоны-«затычки для щелей». Затем просто сливаем их с полигоном леса редактором в режиме суммирования «E».
  4. Нажав Shift – переводим трассировщик в режим «Отрезать и удалить часть полигона». Маркер-«рука» краснеет и все выпирающие за линию дороги участки леса удаляются в одно касание.

Подробнее в этой категории: « Prev

Добавить комментарий


Защитный код
Обновить