GP tool – удобный инструмент конвертирования данных из SXF в форматы ArcGIS

Чикинев Максим, компания «ДАТА Ист», г. Новосибирск, e-mail: mchiknev@dataeast.ru, Web: http://www.dataeast.ru

 

Введение

Открытый формат цифровой информации о местности (SXF) изначально был разработан для программных продуктов семейства «Панорама» и предназначен для хранения цифровой пространственной информации, создания и отображения цифровых электронных карт, а также для решения других прикладных задач в настольных геоинформационных системах.

Формат имел целевую направленность на универсализацию процессов обмена пространственными данными между различными геоинформационными системами. Но на практике использование файлов данных, созданных в формате SXF, в других программных продуктах и системах (в частности, в программных продуктах линейки ArcGIS) представляет собой довольно серьезную проблему. Сегодня существует несколько отдельных программных решений, позволяющих конвертировать файлы из вышеназванного формата в форматы, поддерживаемые такими настольными ГИС, как MapInfo, AutoCAD и т.п., но все они малопригодны для полноценного использования, обеспечивающего конвертирование без существенных потерь.

К сожалению, и программные средства разработчика формата SXF также не обеспечивают обмен данными без потерь. Программный комплекс «Карта 2008» имеет в своем составе лишь один инструмент, который можно использовать для конвертирования данных формата SXF в формат SHP. Но недостатки данного инструмента в значительной мере ограничивают возможности его использования в рамках программных продуктов семейства ArcGIS. Наряду с тем, что исходящие Shape-файлы исключают возможность отображать аннотации (надписи), выходным форматом проекта является apr – довольно устаревший формат ArcView 3.х со скудной символикой. Соответственно, результирующий файл проекта не сохраняет параметры визуализации объектов, в проекте нарушен порядок отображения слоев (сначала рисуются точечные объекты, затем линейные и площадные), имена слоев в легенде не имеют смысловой нагрузки. Кроме того, в описываемом инструменте нет поддержки системы координат, то есть, по сути, выходные геоданные не имеют географической привязки. Фактическая непригодность этого инструмента конвертирования иллюстрируют рис. 1, 2. Очевидно, что результат далек от оригинала и потребуются достаточно большие усилия, чтобы добиться приемлемого соответствия, но уже вручную.

 


Рис. 1.
Исходная карта, открытая в «Панораме».


Рис. 2.
Результат работы обычного конвертера.

 

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

GP-tool для конвертирования SXF

Для решения задачи конвертирования файлов формата SXF в формат, доступный программным продуктам ArcGIS, нами был разработан специальный инструмент геообработки, названный SXF Reader GP-tool. Наш выбор технологии был обусловлен стремлением максимально унифицировать пользовательский интерфейс этого инструмента с другими инструментами геообработки, имеющимися в ArcGIS. Кроме того, мы стремились автоматически предоставить в SXF Reader GP Tool все преимущества технологии геообработки: возможность запускать функциональность инструмента из пользовательского кода (например, из скриптов Python, из VBA-функции или из сторонней программы); возможность запускать инструмент по определённому расписанию без отображения пользовательского интерфейса и т.д. Важно отметить, что среда GP Framework позволяет публиковать GP-tool на сервере под управлением технологии ArcGIS Server и запускать инструмент чтения файлов SXF посредством клиентов ArcGIS Server или через его Web-интерфейс.

По нашему заключению, полученный результат способен удовлетворить самые взыскательные требования и имеет ряд преимуществ перед устаревшими аналогами. SXF Reader GP Tool принимает четыре параметра:

  • файл SXF для конвертирования (может принимать на вход как текстовые, так и бинарные типы формата);
  • файл классификатора (RSC), содержащий метаинформацию о данных (название полей, классов, символику и т.д.);
  • выходная база данных (fgdb, mdb, sde, рекомендуется fgdb);
  • выходной файл проекта новой карты (mxd).

И все это происходит за очень короткое время.

Помимо этого, новый инструмент обладает следующими достоинствами и возможностями:

  • выходным форматом является любая база данных (fgdb, mdb, sde), которая поддерживается в ArcGIS, что позволяет хранить не только векторные объекты, но и аннотации (надписи);
  • поддержка доменов, которая вытекает из выходного формата (файлы shape не предоставляют такой возможности);
  • имена полей могут иметь псевдонимы (aliases);
  • имена классов объектов (feature classes) также могут иметь псевдонимы;
  • выходным форматом проекта карты является mxd, который предоставляет возможность построения карты, близкой к оригиналу;
  • при возможности, визуализация объектов (символика) точно повторяет исходную.

Пример использования GP tool

В качестве исходной карты возьмем наш первый пример (рис. 1). Зададим все необходимые параметры в окне GP tool (рис. 3). После завершения работы инструмента (рис. 4) посмотрим на полученный результат конвертации в окне ArcMap (рис. 5-6). Как видно из сравнения исходного и двух последних рисунков, результат достаточно близко повторяет оригинал.

 


Рис. 3.
Параметры GP tool.


Рис. 4.
Результат работы GP tool.


Рис. 5.
Выходной mxd, открытый в ArcMap.


Рис. 6.
Выходной mxd, открытый в ArcMap (более крупный масштаб).