Easy Trace Group

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

Сегментация проекта и сшивка

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

Любой крупный проект подразумевает, в первую очередь, разбиение одной сложной задачи на небольшие подзадачи. Если принимать под проектом оцифровку значительной территории, то разбиение на небольшие участки и их последующая оцифровка напрашиваются сами собой. Проблемы начинаются при попытке собрать все воедино, и на этом мы остановимся подробнее.

При описании схемы работы с векторизатором или рассмотрении технологии выполнения крупных проектов всегда упоминаются две операции: сегментация проекта и обратная ей - сшивка векторных сегментов (подпроектов).

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

Зачастую, сегментация проекта - это единственно возможный способ избежать "тирании количества". То есть того самого случая, когда сотни тысяч элементов проекта и десятки подключеных растров катастрофически замедляют операции проверки топологической корректности векторных данных.

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

Создание подпроектов на основе полного покрытия

Маленькое пояснение: полное покрытие - это проект, содержащий все растры покрытия. Сборка полного покрытия гарантирует попадание каждого планшета на свое место, избавляет от пропусков и позволяет наглядно планировать работу.

Для равномерной работы важно выделить подпроекты примерно равной нагруженности; для этой задачи полное покрытие тоже подходит как нельзя лучше. Ну а выделение в подпроект группы смежных планшетов заметно уменьшает затраты на сводку и сшивку объектов, рассеченных границами планшетов.

Еще один плюс от использования сегментов - это возможность "заглянуть за горизонт". Утилита сегментации автоматически окружает каждый подпроект "пограничной зоной", состоящей из узких фрагментов соседних растров. Это позволяет не ломать голову, выясняя происхождение фрагментов рассеченных границей объектов. Кроме того, можно еще до сшивки нивелировать встречающиеся на границах расхождения.

Для подготовки подпроектов в Easy Trace Pro служит специальная утилита Создание подпроектов. Утилита выполняет:

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

Результат работы утилиты - это каталог, содержащий все необходимые элементы подпроекта. Такой каталог никак не связан с исходным проектом, может переносится на любую машину и обрабатываться совершенно автономно. При этом результаты обработки будут гарантировано совместимы с исходным полным проектом.

Допустим, мы имеем полное растровое покрытие. Алгоритм действий следующий:

  1. Открыть полный проект.
  2. Выбрать команду Утилиты->Создание подпроекта
  3. Указать левой клавишей мыши в поле проекта на растры, на основе которых вы хотите создать подпроект. Для отмены выделения ошибочно выбранного растра достаточно еще раз кликнуть по нему левой клавишей мыши.
  4. В окне "Создание подпроекта" задать необходимые параметры:
    • В поле "Имя" введите имя выделяемого подпроекта (по умолчанию имя подпроекта не задается). Если подпроект создается на основе одного растра, то в качестве имени подпроекта удобно использовать его имя. Для уточнения имени растра, переместите на него курсор мыши - над растром появится подсказка с его именем.
    • Укажите "Папку", в которой будет сохранен этот (и возможно другие) подпроект. Имя папки достаточно задать один раз. Все последующие выделенные подпроекты будут сохраняться в этом каталоге. Каждый подпроект будет помещен в отдельную папку, имя которой совпадает с именем подпроекта. Если папка не задана, то подпроекты будут сохраняться в папке исходного проекта.
    • Можно автоматически создать рамки по границам подпроекта и/или по границам входящих в него растров. Для этого включите соответствующие опции и выберите слой для размещения рамок (структура слоев наследуется от исходного проекта).
    • Выделяемый подпроект всегда окружается "пограничной зоной", состоящей из фрагментов прилегающих к подпроекту растров. Шириной этой зоны можно управлять, задавая "размер поля" (указывается в единицах проекта).
    • Задание различных цветов для растров подпроекта и "пограничной зоны" поможет вам избежать неумышленного "перехода границы" при трассировке. Выберите цвет основных растров (которые находятся внутри подпроекта) и цвет дополнительных растров (окружающих основное поле). Выбор цвета возможен только для монохромных растров.
    • На исходном проекте можно отметить растры, уже выделенные в отдельные подпроекты. Для этого можно взвести флаг "Создать рамку подпроекта" и указать слой для ее создания. Кроме того, такие растры можно пометить, отобразив их имена. Выберите опцию "Создать текст с именами растров" и укажите высоту и слой для размещения текста над каждым из растров, вошедшим в подпроект.
  • Нажав кнопку "Создать" (она становится активной только после выделения растров и ввода имени подпроекта), вы выделяете подпроект и можете переходить к определения следующего подпроекта.

    Сшивка векторных данных

    При сборке полного векторного покрытия из отдельных планшетов или из сегментов-подпроектов необходимо выполнить сшивку векторных данных (пример выполнения сшивки неплохо описан в статье "Как была оцифрована Караганда").. Решение этой задачи, как правило, сопряжено с разрешением массы мелких конфликтов между данными соседних листов. Прежде всего, это некоторое (или значительное!) несовпадение координат сшиваемых концов линий или расхождение границ полигонов. Возможны рассогласования по слою, толщине линий, значению координаты Z и, конечно, расхождение в атрибутивных данных объектов.

    Таким образом, "сшивка" проектов сводится к выполнению следующих операций:

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

    Следует сказать, что в Easy Trace Pro сшивка может выполнятся вдоль произвольной векторной линии. Такая линия (или несколько линий) играют роль границ между сшиваемыми материалами. Естественно, эти линии должны как то отличаться от остальных векторных данных. Все отличие заключается в том, что они лежат на отдельном слое. Этот слой следует указать в опции "Взять границы со слоя". Очевидно, что никаких других полилиний в этом слое быть не должно!

    Сбор векторных данных в один проект осуществляется через импорт подпроектов. При импорте все данные приводятся к единому масштабу и DPI, соответствующим подпроекту, в который производится импорт.

    Следующий шаг - это определение границ, вдоль которых будет выполняться сшивка. Конечно, можно было бы использовать границы, созданные при выделении подпроектов. Но увы, обычно они уже сильно "испорчены" общими вершинами, образованными при пристыковке к ним пограничных векторных объектов. Следовательно границы (линии сшивки) должны быть созданы заново.

    Вот как это выглядит:

    1. Открываем первый подпроект (а может быть, исходный полный проект).
    2. Выполняем импорт остальных сегментов проекта - команда "Файл->Импорт". Попутно создаем границы сшивки, указав опцию импорта "Создать границу на слое" (для создаваемых границ можно задать имя нового слоя - он будет создан автоматически. Важно, чтобы на этом слое ничего, кроме границ, не было!).
    3. Выполнив импорт, проверяем наличие и корректность положений линий сшивки. При необходимости, корректируем их.
    4. Выбираем команду Утилиты->Сшивка полилиний. В открывшемся окне указываем:
      • слои, подлежащие сшивке;
      • слой, содержащий границы сшивки;
      • допуск, в пределах которого будет сшиваться линии;
      • типы отслеживаемых ошибок и условий соединения линий.
    5. Исправляем все обнаруженные ошибки с помощью редактора примитивов

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

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

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


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