Особенности экспорта и импорта в\из ИнГео + прототип ET

Подготовку данных для системы ИнГео можно значительно ускорить с помощью Easy Trace 9.5. Причём нет необходимости использовать какие-либо конверторы — поддержка формата ИнГео встроена в версии 9.5 непосредственно в векторизатор.

Наполнение ГИС данными, как правило сводится к решению как минимум одной из трех задач. Хотя чаще всего используется некая их комбинация. Итак, требуется:

  1. Оцифровать (преобразовать растр в «вектор»);
  2. Конвертировать готовые данные, уже имеющиеся в формате стороннего продукта;
  3. Обновить/Отредактировать и проверить данные, ранее помещённые в ГИС.

Выступая в роли посредника, Easy Trace упрощает решение всех перечисленных задач. В основе решения каждой из вышеперечисленных задач лежит помещение данных в Easy Trace и, после обработки, их передача в ИнГео. Далее описываются особенности обмена данными между Easy Trace и ИнГео и даются некоторые рекомендации.

Для осуществления передачи данных требуется Easy Trace версии не ниже 9.5 и ГИС ИнГео версии не ниже 4.4.3.x. Кроме того, при выполнении операций экспорта и импорта должен быть запущен сервер данных ИнГео. Для успешного обмена желательно, чтобы совпадали структуры проектов ИнГео и Easy Trace. Поэтому мы рекомендуем вручную согласовать некоторые их параметры. 

В проекте Easy Trace, куда предполагается импортировать данные из ИнГео, следует установить требуемое направление осей координат, масштаб и единицы проекта (его реальные координаты будут вычислены в ходе импорта данных), а также включить опцию «Поддерживать атрибуты текстовых объектов». Затем выполните импорт целевого проекта ИнГео в Easy Trace с опцией «Импортировать только структуру проекта». 

Готово: теперь у нас есть два согласованных проекта в форматах ИнГео и Easy Trace. 

Далее необходимо загрузить имеющиеся данные в проект Easy Trace. Затем воспользоваться мощным функционалом Easy Trace и получить полноценные, пространственно и топологически корректные данные, удовлетворяющие самым жестким критериям заказчика. Наконец, выгрузить полученные данные в формате целевой ГИС.

Пример результата оцифровки планшета 1:500 в ET и его конвертации в формат ИнГео:

Тот же лист в ИнГео:

В нашем случае целевой ГИС является ИнГео. Поскольку существует некоторая разница в представлении данных в ИнГео и Easy Trace, часть информации при конвертации будет потеряна. В основном, эта информация касается оформительских характеристик объектов; геометрия и семантика передаются между системами без потерь.

  1. Отображения и стилиВ Easy Trace отображение объектов некоторого слоя определятся значением одного классифицирующего атрибута. В ИнГео же отображение определяется стилем, причем каждый стиль может иметь несколько вариантов отображения, как для разных масштабов, так и для одного. Соответственно, на обмене данными это сказывается следующим образом:
    • В Еasy Тrace атрибутивные таблицы слоев должны содержать атрибут, отвечающий за отображение, соответствующее стилям ИнГео (по умолчанию IngeoStyleName).

    • В Easy Trace импортируется только один метод отображения для каждого стиля ИнГео.

  2. АтрибутыКаждый слой Easy Trace может иметь до 2 таблиц атрибутов (отдельно для точек и линий). В ИнГео же слой может иметь несколько независимых атрибутивных таблиц. При импорте приходится сливать все эти таблицы вместе, поэтому возникает проблема уникальности имен полей. Для ее решения для имени поля используется специальный формат: «имя_таблицы#имя_поля».

    Например, в ИнГео слой «Здания» имеет 2 таблицы: таблицу «Адрес» с полями «Улица» и «НомерДома» и таблицу «Здание» с полем «РеестровыйНомер». При импорте в Easy Trace мы получим одну таблицу «Здания» с полями «Адрес#Улица», «Адрес#НомерДома», «Здание#РеестровыйНомер».

    Т.о., чтобы не возникало путаницы, таблицы ИнГео должны иметь уникальные имена внутри слоя.

    Атрибутивные домены Easy Trace заполняются на основе справочников ИнГео (значение атрибута + описание). Но справочники ИнГео могут быть сформированы на основе нескольких атрибутивных записей; такая информация потеряется при импорте в Easy Trace.

    Атрибутивные таблицы ИнГео поддерживают связи «один-ко-многим», т.е. одно здание может иметь несколько адресов. В Easy Trace такой возможности нет, поэтому при импорте будет сохранена только одна запись. Это, пожалуй, самое серьёзное ограничение обмена.
  3. ОбъектыОбъекты ИнГео состоят из контуров (примитивов), отображение которых определяется их стилем. Т.е. четыре примитива с разными стилями (выглядящие как точка, текст, окружность и линия) могут составлять один объект. В Easy Trace нет возможности объединять примитивы (кроме блоков, но блок ET — объект специфичный и все его примитивы отображаются всегда одинаково). Чтобы сохранить группировку ИнГео, в Easy Trace объекты группируются искусственно при помощи специального атрибута «IngeoGroupID». Т.е. контуры одного объекта ИнГео импортируются в отдельные объекты Easy Trace, имеющие общее значение атрибута «IngeoGroupID». Исключение: если все контуры полигональные – в этом случае при импорте будет создан полигон с дырками. Аналогично, при экспорте объекты с одинаковым значением атрибута «IngeoGroupID» будут сгруппированы в виде единого многоконтурного объекта. 

    Создавать с нуля такие связанные группы в Easy Trace можно только вручную, присваивая объектам группы конкретное значение «IngeoGroupID», что, разумеется, неудобно и небезопасно (в смысле отслеживания уникальности идентификатора группы). Однако для наиболее частого случая связывания объектов – подписей – реализовано авто-заполнение группового атрибута: при генерации подписей в Easy Trace данный атрибут заполняется автоматически уникальным значением.

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