Геоинформационная система ГрафИн 4. 0 и ее применения

А.В. Скворцов

ГЕОИНФОРМАЦИОННАЯ СИСТЕМА ГрафИн 4.0 И ЕЕ ПРИМЕНЕНИЯ

Описывается геоинформационная система ГрафИн 4.0, основные ее концепции, нововведения по сравнению с предыдущей версией, тенденции развития, применение для решения инженерных задач.

Геоинформатика и вычислительная геометрия являются в последнее время одними из наиболее динамичных областей информатики. Их достижения используются в явном виде в двух основных классах программных систем: в геоинформационных системах (ГИС) и системах автоматизированного проектирования (САПР). В последние годы наметилась существенная тенденция по взаимному сближению направлений в связи с появлением широкого пласта задач, требующих для своего решения использования возможностей как ГИС, так и САПР [1, 2].

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

В связи с этим с 1996 г. в НПО «Сибгеоинформатика» под руководством автора выполнялась разработка геоин-формационной системы ГрафИн (рис. 1) [3, 4]. В 2001 г. была выпущена уже 4-я версия системы. Последняя версия обладает многими возможностями, свойственными известным полнофункциональным ГИС, но, кроме того, обладает многими чертами САПР, включая создание сложных чертежей и наличие инструментов их анализа.

ГИС ГрафИн 4.0

В последней версии геоинформационной системы ГрафИн 4.0 значительно расширены базовые возможности системы:

- расширены возможности по пространственному анализу (оверлеи, буферные зоны);

- переделан модуль моделирования рельефа (введена новая модель данных, добавлены операции по расчету экспозиций склонов и зон видимости);

- созданы новые инструменты для анализа различного рода сетей (графовые модели);

- разработан модуль анализа транспортных сетей и расчета пассажиропотоков;

- изменена подсистема работы с атрибутивными данными;

- переделан модуль работы с растровыми изображениями (введена поддержка новых форматов данных, расширены возможности по векторизации);

- доработана подсистема отображения условных знаков;

- расширены возможности АсйуеХ-интерфейса программирования;

Рис. 1. Геоинформационная система ГрафИн 4.0 и её применения

- внесены различные изменения в интерфейс пользователя.

На базе ГИС ГрафИн 4.0 в настоящее время в НПО «Сибгеоинформатика» уже выполнены и ведутся несколько крупных проектов:

- информационная система городских электрических сетей;

- информационная система городских водопроводных сетей;

- информационная система городских тепловых сетей;

- информационная система городских сетей водоотведения;

- информационная система городских электрических сетей;

- программа расчета установившихся режимов электрических сетей;

- программа расчета установившихся режимов водопроводных сетей;

- программа расчета установившихся режимов газопроводных сетей;

- система инвентаризации жилого фонда;

- система ведения земельного кадастра.

В разное время в работе над геоинформационной системой ГрафИн и в выполнении проектов на ее основе, кроме автора, принимали участие С. А. Субботин, С.Г. Слюсаренко, С.А. Жихарев, А.Ю. Кобрин, В.Е. Дмитриенко, Д.С. Сарычев, Ю.Л. Новиков, Ю.Л. Костюк, Л.Ю. Костюк.

В настоящий журнал включен ряд статей, посвященных различным аспектам создания ГИС ГрафИн и различных прикладных систем на ее основе. В [5] описывается общая технология работы с графовыми (сетевыми) структурами, реализованная в ГИС ГрафИн. Некоторым применениям этой технологии посвящены работы [6-10].

Так, в [6] описывается применение этой технологии для анализа электрических и трубопроводных сетей на примере информационной системы городских коммуникаций. В работе [7] приводится информационная система трубопроводных сетей, структура лежащей в ее основе базы данных, виды информационных запросов.

В [8] приведен пакет расчета установившихся режимов, созданный на основе разработанных С.Г. Слюсаренко оригинальных алгоритмов расчета установившихся режимов электрических и трубопроводных сетей, в [9] - пакет решения транспортных задач и расчета транспортных пассажиропотоков.

В [10] рассматриваются различные вопросы применения ГИС-технологий, в частности ГИС ГрафИн 4.0, для ведения земельного кадастра.

Работы [11-14] посвящены алгоритмическим аспектам разработки ГИС. В [11] рассматривается задача построения триангуляции - одной из базовых проблем, возникающей при решении многих практических задач в рамках ГИС. Основное внимание при этом уделяется надежности и качеству работы алгоритмов в условиях ограниченной точности вычислений. На базе алгоритмов построения триангуляции с ограничениями в ГИС ГрафИн разработана подсистема моделирования рельефа. В

[12] описывается её реализация и предлагается ряд алгоритмов для анализа, в частности, алгоритм построения зон видимости и вычисления объемов земляных работ.

Одной из базовых функций ГИС является пространственный анализ, в частности, вычисление объединения, пересечения и разности полигонов. В [13] предлагается линейно-узловой алгоритм построения оверлеев для решения этих задач. Этот алгоритм, в отличие от многих аналогов, позволяет обрабатывать в качестве исходных данных произвольные полигоны, в том числе многоконтурные, самопересекающиеся и вырожденные. В этом алгоритме в явном виде контролируется точность выполняемых промежуточных вычислений, что позволяет в ряде случаев существенно повысить качество работы.

В [14] рассматривается задача векторизации цветных растровых изображений и предлагаются алгоритмы построения векторных моделей изображений с использованием триангуляции.

Архитектура системы и структуры данных

Концептуально система ГрафИн состоит из ядра системы и различных проблемно ориентированных надстроек. Ядро системы отвечает за базовые операции по манипуляции с абстрактными документами, слоями, визуализаторами векторных данных и т.п. В надстройках описываются конкретные реализации определённых типов документов, слоёв, специальные алгоритмы анализа и обработки графической информации.

В системе ГрафИн векторные данные (кроме данных 8ББ, хранимых на сервере) хранятся в памяти в виде динамических массивов для обеспечения прямого доступа ко всем объектам, при этом все объекты индексируются с помощью Я-деревьев, что позволяет достичь при оперативной работе в системе скорости реакции, ранее недостижимой в коммерческих графических системах.

Атрибутное описание графических объектов хранится частично вместе с графикой в специальном внутреннем формате, зависящем от типа слоя графики, при этом для всех видов векторных данных предоставляется возможность присоединения по некоторому ключевому полю дополнительных таблиц, имеющих произвольный формат, поддерживаемый через стандартные программные интерфейсы БББ, ГОАР1 или ОББС. Просмотр и анализ атрибутов объектов при этом может выполняться с помощью штатных средств для работы с базами данных, в том числе с использованием языка запросов 8рЬ.

Система ГрафИн может работать с растровой информацией, представленной в одном из 20 графических форматов.

При работе на компьютере с такими документами, как карты, растровые изображения, документы ОЬБ, текстовые документы, темы, редактируемые ех-шрифты, интерфейсы с базой данных и т.п., в настоящее время наиболее распространённым приёмом в программных системах является упорядочение документов в виде проектов.

Рис. 2. Менеджер проектов ГИС ГрафИн 4.0

В систему ГрафИн входит менеджер проектов, позволяющий удобно управлять всеми рабочими документами (рис. 2). С помощью менеджера проектов можно загружать проекты с диска, создавать новые, закрывать их, а также манипулировать документами внутри проекта. С его помощью происходит управление всеми документами и связанными с ними редакторами. В настоящее время в систему ГрафИн входят такие редакторы, как редакторы карт, текстовые, растровые, ОЬБ-документов, тем, ех-шрифтов, отчётов из баз данных, интерфейсов баз данных и др.

Работа с картами и чертежами

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

В системе ГрафИн стандартными являются следующие виды слоёв:

Папка слоёв. Объединяет группу слоёв для удобства их совместной манипуляции, например для 56

включения/отключения видимости всех слоёв, входящих в папку.

Слой шейп-файла. Слой векторной нетопологической графики бывает 4 типов: слой точек, полилиний, полигонов и мультиточек. В системе ГрафИн этот слой данных является базовым для представления геоинформационных данных. Формат представления этих данных полностью совместим с форматом шейп-файлов ESRI, что позволяет совместно использовать многие данные с системами ArcInfo и ArcView.

Слой покрытия. Линейно-узловое топологическое представление (покрытие) предполагает описание множества объектов на плоскости в виде связанной совокупности узлов, дуг и регионов. Система ГрафИн позволяет создавать, редактировать покрытия, а также обмениваться данными с другими системами через обменный формат покрытия ArcInfo.

Слой чертежа ГрафИн. САПРовский слой векторной графики предназначен для создания таких сложных графических изображений, как технологические схемы, а также для создания элементов карт, не представимых точками, линиями и полигонами, например привязок коммуникаций к зданиям.

Слой системы SDE. Система SDE (Spatial Database Engine) от фирмы ESRI, Inc. - мирового лидера в области ГИС - предназначена для серверного хра-

нения больших объёмов пространственных нетопологических данных. Система SDE позволяет хранить на одном слое одновременно нескольких типов данных, таких как точки, полилинии, полигоны и мультиточки. Система ГрафИн позволяет использовать данные с этих слоёв наравне с другими источниками геоинформационных данных.

Слой растрового изображения. Предназначен для представления в качестве растровой подложки на карте фотографий, сканированных изображений карт, схем и т.п. Система ГрафИн поддерживает 20 форматов растровых изображений, в том числе такие широко распространённые, как JPEG, GIF, TIFF, BMP и др.

Слой нерегулярной сети отсчётов (высот) поверхности. Построенная по нерегулярной сети отсчётов модель поверхности может использоваться для моделирования рельефа местности или других непрерывных скалярных полей.

Слой регулярной сети отсчётов. Регулярная модель данных применяется для моделирования категорийных или непрерывных полей, например рельефа местности, загрязнений окружающей среды, полей видимости, бассейнов стока.

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

Слой рамки. Рамка предназначена для подготовки карт и схем к печати. С помощью этого слоя можно задать стандартное рамочное и зарамочное оформление карт и чертежей стандартных и нестандартных масштабов.

Рис. З. Различные способы визуализации географических данных в ГИС ГрафИн 4.0

Большое разнообразие различных поддерживаемых видов данных позволяет системе ГрафИн создавать и эффективно работать с комбинированными графическими изображениями, что ранее было недоступно в распространённых системах ГИС и САПР.

Визуализация векторных данных

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

В системе ГрафИн имеется широкий спектр стандартных визуализаторов, позволяющих создавать весьма выразительные тематические карты.

1. Отрисовка фиксированным условным знаком. Каждый условный знак может характеризоваться такими параметрами, как его тип, размер, поворот, цвет.

2. Отрисовка условными знаками в зависимости от значений атрибутов (по конкретным значениям, по диапазонам значений, по условному выражению).

3. Отрисовка подписями. Автоматическое подписывание объектов позволяет быстро создавать простые, но информативные карты. При подписывании объектов возможно задание текста подписи, логического условия подписывания, расположения подписи относительно объекта, угла вращения подписи, признаков удаления одинаковых и пересекающихся подписей.

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

5. Отрисовка точками плотности. Случайно набросанные на полигоне некоторые точечные условные знаки позволяют по их плотности распределения визуально качественно оценить некоторые параметры (например, плотность населения стран на карте мира).

6. Отрисовка изолиниями. Подписывание изолиний значениями их высот общепринято в бумажной картографии. В системе ГрафИн можно подписы-

Выбор заливки [№12 - без названия]

¡и Шрифт заливок №1

вать произвольные линии и полигоны, например линии рек.

7. Отрисовка сплайнами. Сглаживание линий и границ полигонов при их отображении позволяет даже при недостаточной точности исходных данных получать визуально красивые результаты.

8. Отрисовка выпуклостями. Режим специальной выпуклой отрисовки позволяет создавать изображения с объемным эффектом.

С понятием визуализаторов тесно связано понятие ех-шрифтов, разработанных для ГИС ГрафИн в качестве универсальной технологии отображения точечных, линейных и площадных условных знаков (рис. 4). Эта технология обладает следующими возможностями:

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

- адресация конкретного знака в системе производится через пары (имя шрифта; номер элемента);

- при отсутствии требуемого шрифта в системе он автоматически заменяется некоторым другим шрифтом, заданным по умолчанию;

Шрифт;

Размер:

Зеркало: Угол:

В* <£ <£ $$$$ ; с с с < V 'Р 'Р >

а/\: ш. Ф Ф ;

ЧЛ* ~<£> с£> ‘о ‘о 5 "¿5 Й О ‘О — ' XXX

ш

>,г »г . ВІЙНІ

881 шш

А^Б АЧ ШШШ «г т 1+1+1 9Г т~ #!; • Ь •_» А ♦_» А +_ ¡11 <*><*>< <*><*>

. о. О. О о 111 111 ООО ООО

Рис. 4. Разные виды ех-шрифтов и их редактирование

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

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

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

- условные знаки для технологических схем могут иметь несколько состояний (например, для элементов технологических схем состояний типа «включен/выключен»).

Ае^уеХ-интерфейс программирования

Все основные части системы ГрафИн оформлены как классы, которые можно расширять по своей функциональности с помощью технологии встраи-

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

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

Система ГрафИн имеет несколько основных возможностей для расширения системы и разработки на её базе прикладных систем.

Основной способ заключается в использовании ActiveX-интерфейса прикладного программирования системы в соответствии со спецификацией ActiveX фирмы Microsoft, являющейся в настоящее время стандартом де-факто для программ, работающих в среде Windows. В системе ГрафИн все основные части программы поддерживают этот интерфейс, что позволяет использовать систему ГрафИн или её части в программах на любых языках, поддерживающих ActiveX-управление.

Иерархия ActiveX-объектов ГрафИн в настоящей версии системы составляет более 235 классов, каждый из которых имеет в среднем около 20 методов и свойств. Их полное описание приведено в приложении к руководству программиста системы ГрафИн.

ЛИТЕРАТУРА

1. Кошкарёв А.В., Тикунов В.С. Геоинформатика. М.: Картгеоцентр-Геодезиздат, 1993. 213 с.

2. Цветков В.Я. Геоинформационные системы и технологии. М.: Финансы и статистика, 1998. 288 с.

3. Скворцов А.В. Система ГрафИн // Геоинформатика: Теория и практика. Вып. 1. Томск: Изд-во Том. ун-та, 1998. С. 181-192.

4. Скворцов А.В. Инструментальная геоинформационная система ГрафИн: новая версия // Геоинформатика-2000: Труды Междунар. науч.-практ. конф. Томск: Изд-во Том. ун-та, 2000. С. 90-96.

5. Скворцов А.В., Сарычев Д.С. Технология построения и анализа топологических структур для ГИС и САПР // Наст. журн.

6. Слюсаренко С.Г., Сарычев Д.С., Скворцов А.В. Применение графовых моделей для анализа инженерных сетей // Наст. журн.

7. Новиков Ю.Л., Слюсаренко С.Г., Скворцов А.В., Сарычев Д.С. Информационные системы предприятий трубопроводных сетей // Наст. журн.

8. Слюсаренко С.Г., Костюк Л.Ю., Скворцов А.В. и др. Расчет установившегося режима электрической сети в ГИС ГрафИн // Наст. журн.

9. Скворцов А.В. Реализация пакета транспортных задач в ГИС ГрафИн // Наст. журн.

10. Субботин С.А., Скворцов А.В. Использование геоинформационных технологий для ведения земельного кадастра // Наст. журн.

11. Скворцов А.В. Особенности реализации алгоритмов построения триангуляции Делоне с ограничениями // Наст. журн.

12. Скворцов А.В. Алгоритмы анализа триангуляционной модели поверхности // Наст. журн.

13. Скворцов А.В. Линейно-узловой алгоритм построения оверлеев двух полигонов // Наст. журн.

14. Костюк Ю.Л., Новиков Ю.Л. Улучшение качества графовых моделей цветных растровых изображений высокого разрешения // Наст. журн.

Статья представлена кафедрой теоретических основ информатики факультета информатики Томского государственного университета, поступила в научную редакцию номера 3 декабря 2001 г.