СРЕДСТВА ИНТЕГРАЦИИ ГЕОИНФОРМАЦИОННОЙ СИСТЕМЫ MAPINFO С WWW

Н.Г.Марков, П.М.Острасть, С.И.Агранович

Томский политехнический университет

Тел.: (3822) 41-89-12, факс: (3822) 41-57-18, e-mail: markov@b10.tpu.edu.ru

В последние годы в области создания геоинформационных систем (ГИС) наблюдается их интеграция с сетевыми технологиями. Особенно актуальными являются проекты, направленные на интеграцию ГИС и технологий Internet. Среди них на сегодняшний день лучшими следует считать проекты фирмы Intergraph (США) и компании MapInfo Corporation (США), ведущие к созданию средств сопряжения ГИС с WWW. Однако средства, созданные в рамках этих проектов, в силу значительного объема дополнительного программирования при создании конкретных приложений широкого распространения не получили. Поэтому разработки, выполняемые в направлении создания сетевых ГИС для работы в Internet, продолжают оставаться актуальными. В данном докладе освещаются результаты, полученные в рамках одного из таких проектов в Томском политехническом университете (http://www.gis.cctpu.edu.ru).

Авторами при разработке средств интеграции ГИС MapInfo c WWW был предложен следующий подход. В качестве ядра создаваемой системы выбрана широко распространенная ГИС MapInfo Professional v.4.1 и выше. Выбор коммерческой ГИС обусловлен тем, что такая ГИС имеет большую надежность и развитый набор функций, а разработка собственной ГИС с равными возможностями потребует значительных затрат. Кроме того, ГИС MapInfo Professional имеет COM-интерфейс, предназначенный для построения приложений.

Другой компонентой разработанной системы является сервер приложений, функционирующий совместно с Web-сервером и ГИС MapInfo Professional и взаимодействующий с ними через протоколы CGI и COM, соответственно. Сервер приложений поддерживает два типа клиентов: WWW-клиенты, построенные исключительно средством языка HTML, и Java-клиенты, которые построены на языке Java и, частично, HTML. Другими словами, клиентское приложение представляется совокупностью размещенных на Web-сервере HTML-страниц, либо автономной Java-программой. Использование Java-клиентов предпочтительнее в том смысле, что возможное прямое соединение клиента с сервером приложений дает большую производительность по сравнению с использованием Web-сервера и протокола CGI и снижает нагрузку на сервер.

Алгоритм взаимодействия клиента с ГИС следующий. Клиент с помощью обычного Web-броузера устанавливает соединение с Web-сервером. Сформулированный пользователем запрос передается через Web-сервер серверу приложений по протоколу CGI. Сервер приложений разбирает этот запрос, вызывает необходимые функции ГИС MapInfo Professional, формирует и передает ответ клиенту. Клиент, в свою очередь, выводит полученные результаты и ожидает новых команд пользователя.

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

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

Результаты запроса отображаются с помощью HTML-документов. Такой HTML-документ может содержать следующие типы объектов: изображения карт; таблицы; специальные объекты. Под специальным объектом подразумевается набор HTML-тэгов, представляющий какую-либо сущность. Примером специального объекта может служить набор элементов выбора (CheckBox), предназначенных для управления отображаемыми слоями карты. Предопределенный набор специальных объектов может быть расширен пользователем путем написания соответствующих приложений на языке программирования ГИС MapInfo.

Созданные средства позволяют клиенту переходить с одной HTML-страницы на другую с учетом привязки к текущей сессии ГИС MapInfo.