Комментарий переводчика

Предлагаем вниманию читателей статью Алекса Фордиса (Alex Fordyce), разработчика ГИС-проектов в Internet. Результаты проведенного автором сравнительного анализа возможностей программ Autodesk MapGuide 6 и ArcIMS 4, безусловно, могут показаться субъективными. Однако, несмотря на то что часть приведенной здесь информации изложена недостаточно корректно либо устарела, для специалистов в области ГИС, занимающихся разработкой и проектированием распределенных ГИС-проектов, статья будет представлять несомненный интерес. И это неудивительно: практика показывает, что публикация карт в Internet по технологии компании ESRI, использующей единое хранилище данных на основе СУБД, обойдется разработчику сетевых распределенных ГИС-проектов примерно вдвое дороже, чем аналогичная (близкая по возможностям) технология от Autodesk.

Введение

Эта статья посвящена сравнению программных комплексов Autodesk MapGuide 6 и ArcIMS 4, позволяющих публиковать карты в Internet.

Компания Autodesk в середине 90-х годов прошлого века впервые предложила ГИС-инструментарий для интерактивной работы в Intranet/Internet с динамическими картами, базирующимися на векторной модели представления пространственных данных. С тех пор наилучшим решением для разработки сетевых ГИС-проектов и дистрибуции карт в режиме реального времени по праву считается программный комплекс Autodesk MapGuide, характеризующийся легкостью авторизации карт, высокими возможностями масштабирования и развития ГИС-проектов в сетевом окружении, гибкостью разработки приложений на основе API-вьюера (ActiveXcomponent).

Autodesk MapGuide — полноценная программная среда, позволяющая разрабатывать карты и приложения любой функциональности, предоставляющая возможность публиковать в Internet карты, исходные данные которых содержатся в различных удаленных базах данных, обеспечивающая интеграцию ГИС-данных разных форматов (таких как SHP, MIF/MID, DGN, DWG и ESRI).

В отличие от технологии Autodesk MapGuide, технология ESRI ArcIMS позволяет с помощью стандартного web-браузера просматривать лишь Shape-файлы с использованием собственного языка программирования ArcXML.

Конечно, огромной заслугой ESRI является то, что она стала первой ГИС-компанией, начавшей работать с картами в Internet. Однако при развитии сетевой ГИС-линейки возникли многочисленные сложности, обусловленные тем, что программа ArcIMS изначально не была ориентирована для использования в глобальной сети, а Internet-компонент предназначался лишь для расширения возможностей настольной ГИС.

Разработанный ESRI инструментарий программирования MapObjects IMS эффективен, однако использует сложную среду разработки приложений.

После выпуска в 1998 году очередной версии MapObjects IMS компания ESRI инвестировала средства в создание дифференцированного кодового потока. Появившийся в результате ArcIMS 4, несмотря на номер версии, по существу стал второй реализацией кодового потока.

Таким образом, ArcIMS по сравнению с Autodesk MapGuide — относительно новая технология, поэтому при ее использовании могут возникнуть проблемы, обычно присущие новым линейкам программного обеспечения. Хотя четвертая версия ArcIMS во многом свободна от недостатков версий-предшественниц, наследуемые особенности дают о себе знать и в ней.

Несмотря на то что и Autodesk MapGuide, и ArcIMS — довольно мощные инструменты, различия между ними, обусловленные заложенными при первоначальной разработке концепциями и путями дальнейшего развития, остаются. Компания Autodesk убеждена, что принцип построения Autodesk MapGuide и постоянное упрощение работы с продуктом делают наиболее эффективным именно это решение.

ГИС в Internet

Публикация ГИС-данных в Internet — мощное средство эффективного взаимодействия и общения, позволяющее просматривать данные при помощи недорогого стандартного web-браузера.

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

Основная же проблема использования ГИС в Internet — это зависимость от скорости обмена данными между сервером и клиентом. Поэтому главная задача ГИС-Internet — обеспечение легкой масштабируемости ГИС-проекта и создание приложений, которые эффективно работают как в сетях с высокой пропускной способностью, так и в сетях с ограниченным траффиком. Именно эти критерии и были положены в основу сравнения технологий Autodesk MapGuide 6 и ArcIMS 4.

Как правило, технология работы с ГИС-данными в Internet предусматривает трехуровневую архитектуру.

  1. Сервер пространственных данных, обеспечивающий эффективное взаимодействие с web-сервером путем обмена запросами на получение данных из различных источников.
  2. Средства создания фрагмента карты, позволяющие встроить его в web-страницу.
  3. Internet-приложения, предоставляющие удаленным пользователям возможность работы с картами в сети.

Компоненты Autodesk MapGuide

Autodesk MapGuide - простая и эффективная архитектура программного обеспечения
Autodesk MapGuide - простая и эффективная архитектура программного обеспечения

В этом разделе мы рассмотрим структуру каждой из сравниваемых картографических систем.

Autodesk MapGuide состоит из трех основных компонентов, специально разработанных для обмена данными в сетевом окружении и предназначенных для управления динамическими картами посредством web-браузера.

1. Autodesk MapGuide Server

Обеспечивает обработку поступающих из вьюера запросов и передачу пользователю данных, соответствующих этим запросам.

2. Autodesk MapGuide Author

Создает карты, сохраняющиеся в виде MWF-файла проекта и впоследствии внедряемые в web-страницу. Определяет все их свойства (цвет, тип линий, условия доступа к слоям, дифференциация масштабов слоев и т.п.), а также функциональность вьюера.

Кроме того, карты можно создавать при помощи программы Autodesk Envision, интегрированной с Autodesk Land Desktop, Autodesk Map (а также в любых других приложениях, отвечающих стандарту OpenGIS), а Autodesk MapGuide обеспечивает публикацию данных как в локальных сетях, так и в Internet.

3. Autodesk MapGuide Viewers

Autodesk MapGuide позволяет работать с четырьмя типами вьюеров:

  • Plug-in использует формат NetscapeR;
  • ActiveXR Control использует формат Microsoft Internet Explorer;
  • JavaT Viewer для операционных систем SunR и MacintoshR;
  • Autodesk MapGuide LiteView (не требует использования дополнительных программ).

В состав технологической линейки также входят компоненты, значительно расширяющие функциональность и позволяющие разрабатывать следующие приложения: SDF Loader, SDF COM Toolkit, Dynamic Authoring Toolkit, Data, Provider for SHP (обеспечивает возможность прямого доступа к SHP-файлам и их чтение), Data Provider for Oracle Spatial (позволяет напрямую читать содержимое баз данных Oracle Spatial и Oracle Locator), Raster Workshop (утилита для повышения удобства работы с растровыми геоизображениями), Symbol Manager (утилита для создания и использования символов).

Компоненты ESRI ArcIMS

ESRI ArcIMS - более сложная архитектура
ESRI ArcIMS - более сложная архитектура

ArcIMS состоит из пяти основных взаимосвязанных компонентов, позволяющих просматривать и запрашивать ГИС-данные через web-браузер.

1. ArcIMS Spatial Server

Обеспечивает обработку запросов на получение и формирование картографической и атрибутивной информации.

2. ArcIMS Application Server

Компонент, написанный на языке Java. Позволяет отслеживать пользовательские (клиентские) запросы на получение информации и отправлять их на соответствующий ArcIMS Spatial Server.

3. ArcIMS Application Server Connectors

Состоит из четырех коннекторов, обеспечивающих связь между web-сервером и ArcIMS Application Server. Любой из этих коннекторов может быть использован для транслирования клиентских запросов в формат ArcXML:

  • ArcIMS Servlet Connector для формата ArcXML;
  • ColdFusion Connector транслирует Macromedia ColdFusion в формат ArcXML;
  • ActiveX Connector транслирует ASP и VB в формат ArcXML;
  • ArcIMS Java Connector использует JSP.

4. ArcIMS Manager

Web-оболочка, объединяющая в одном пользовательском интерфейсе три отдельных приложения: ArcIMS Author, ArcIMS Designer, ArcIMS Administrator. Особенности Internet-структуры позволяют использовать ArcIMS Manager в удаленном режиме.

5. ArcIMS Viewers

ArcIMS обеспечивает работу с тремя типами вьюеров: HTML Viewer, Java Standard Viewer и Java Custom Viewer.

Дополнительные компоненты предоставляют различные возможности для развития функциональности пользовательских приложений, включая ArcSDE, ArcMap и Route Server.

Карты, данные и вьюеры

Autodesk MapGuide Author послойно извлекает из MapGuide Server векторные и растровые данные, сохраняя ссылки на каждый слой и связанные с ним таблицы описательных данных в MWF-файле. Этот файл и публикуется в Internet через браузер. Большим преимуществом Autodesk MapGuide является то, что MWF-файл, созданный в Autodesk MapGuide Author, публикуется напрямую, без дополнительных процедур форматирования.

При работе в среде ArcIMS после создания и авторизации карт в ArcIMS Author для представления в Internet возникает необходимость предварительно создать один из следующих форматов:

  • Image Service — инструмент, разработанный для ArcIMS HTML Viewer (без загрузки) или для любого вьюера из числа ArcIMS Java (с загрузкой) и используемый в качестве основного средства просмотра и выполнения запросов. Image Service позволяет производить поиск и выбор объектов по их типу, изменять масштаб изображения в интересующей области, перемещать карту в окне для просмотра других объектов. Технология Image Service, интегрированного с ArcIMS HTML Viewer, подобна технологии Autodesk MapGuide LiteView и обеспечивает фиксацию и формирование образа запрашиваемых данных с его последующей передачей обратно клиенту в виде растрового изображения форматов PNG или JPEG.
  • Feature Service — инструмент, предназначенный для передачи данных в ArcIMS.

Преимущества форматов SDF перед SHP при публикации в Internet

Внутренний формат Autodesk MapGuide — SDF-файл — имеет только пять атрибутов (индексы, идентификатор, имя, геометрия, URL). Поэтому такие файлы намного меньше по размеру и быстрее передаются через Internet, чем Shape-файлы, использующие формат DBF. Для получения атрибутивной информации SDF-файлы используют источники данных DBMS, делая их более приспособленными для публикации в сети. Дополнительные сведения, приведенные в ESRI Shape-файлах, упрощают работу в режиме настольной ГИС, однако замедляют передачу данных в сети. Shape-файлы содержат три одноименных файла с разными расширениями: SHP, SHX, DBF. В SHP-файле сохраняется геометрия, в SHX — индексы файла геометрии, в DBF — атрибутивная информация SHP-файла. Чтобы получить доступ к информации SHP-файла, необходимо полностью открыть Shape-файлы. Кроме того, с Shape-файлами могут быть связаны и другие файлы, использующиеся при создании определений для иных индексов и ссылок.

Еще одно преимущество формата, используемого Autodesk MapGuide, — возможность объединения в одном SDF-файле большого количества данных из файлов, имеющих формат, подобный Shape-файлам, что позволяет создать единую целостную карту вместо нескольких сотен файлов, каждый из которых требует отдельного управления. SDF-файл позволяет оптимально использовать вычислительные ресурсы, при его создании автоматически создается ключевое поле MGKey_ID, используемое для связывания объектов SDF-файла с соответствующими записями таблиц удаленной базы атрибутивных данных. В каждый момент извлекаются только те атрибутивные данные, которые необходимы по запросу приложения. В качестве удаленных баз данных могут использоваться любые ODBC-совместимые базы данных: DBF-файл, Microsoft SQL Server, Microsoft Access и Oracle.

Управление связями между SDF-файлами и базами данных в Autodesk MapGuide — простой и хорошо документированный процесс. Из SDF-файла через сеть передается только необходимая информация в соответствии со спецификацией запроса. Кроме того, Autodesk MapGuide Server обрабатывает только те пространственные данные, которые определены значениями координат карты пользователя, обеспечивая существенное повышение эффективности работы.

В отличие от этого, при построении запроса с помощью клиентского приложения ArcIMS HTML пользователю приходится принимать все поля связанного с картой DBF-файла, что приводит к необходимости обработки больших объемов данных.

Autodesk MapGuide также выгодно отличается от ArcIMS и быстротой работы внутренних форматов: скорость передачи и распределения в сетях Intranet или Internet пространственных данных, выполненных на основе Autodesk MapGuide SDF-файлов, значительно превосходит скорость выполнения аналогичных проектов на основе ESRI SHP-файлов. Многие разработчики предъявляют к ESRI претензии, касающиеся того, что Autodesk MapGuide читает Shape-файлы быстрее, чем любой из вьюеров ESRI (ArcView, работающий в режиме настольной ГИС, или ArcIMS, обеспечивающий работу в сети Internet).

Типы вьюеров

И Autodesk MapGuide, и ArcIMS обеспечивают возможность работы в режиме удаленного пользователя как с установкой, так и без установки на компьютер дополнительного программного обеспечения (plug-in). Выбор конкретной программной реализации определяется требуемым функционалом конечного приложения. Например, при необходимости только просмотреть пространственные и соответствующие атрибутивные данные возможно использование приложения, основанного на использовании простого растрового изображения, не требующего обработки векторных изображений и, соответственно, не нуждающегося в установке plug-in.

Вьюеры, не требующие загрузки plug-in

Просматривать карты в браузере без установки plug-in позволяет Autodesk MapGuide LiteView — Java-программа, запускаемая как серверное приложение и конвертирующая MWF-файлы в формат PNG.

ArcIMS HTML Viewer — один из вариантов вьюера, доступного для пользователя в среде ArcIMS. Это единственная программа, не базирующаяся на Java. Принцип ее работы заключается в следующем: после отправки ArcXML-файла, содержащего запрос на получение данных из Servitor ArcIMS Server, программа получает соответствующий ответ в том же формате. ArcIMS HTML Viewer обладает большей функциональностью, чем Autodesk MapGuide LiteView, предоставляя, например, возможности буферизации, пространственных запросов (выбор прямоугольником или кругом), измерения расстояний и т.д. Тем не менее большинство этих функций может быть добавлено при настройке и в Autodesk MapGuide LiteView.

Функциональность картографических систем, не требующих установки plug-in, представлена в таблице 1.

Таблица 1

Функциональность Autodesk MapGuide LiteView Autodesk MapGuide LiteView customized ArcIMS HTML Viewer
Необходимость загрузки - - -
Выходной формат PNG PNG JPEG, GIF, PNG
Zoom In, Zoom Out, Zoom Full, Pan + + +
Построение буферов - + +
Выбор внутри буфера - - +
Идентификация (выбор географических объектов и просмотр данных) -
+
-
+
-
+
Измерение расстояний - + +

В ArcIMS предусмотрены два вьюера для Java — Java Standard Viewer и Java Custom Viewer; оба они требуют установки plug-in. В отличие от Autodesk MapGuide, эта программа обеспечивает выполнение прямого редактирования данных. Однако с помощью SDF COM Toolkit подобную функциональность можно добавить и в приложения Autodesk MapGuide, а кроме того — предложить разработчикам множество примеров для обучения. Использование Feature Services в ArcIMS Java Viewer обеспечивает возможность выполнения программой двух функций: MapNotes и EditNotes (доступен только для вьюера Java Standard Viewer).

Функция MapNotes позволяет добавлять в карту (на слой MapNotes) текст или графику, а также редактировать и отправлять одноименную папку на сервер ArcIMS Server.

Функция EditNotes предоставляет возможность редактировать объекты на визуализированной карте. Так же, как и в MapNotes, внесенные пользователем изменения передаются в папку EditNotes на сервер ArcIMS Server и становятся доступными для просмотра администратором сервера. Для создания данных EditNotes должен быть конвертирован в SHP-файл или XML.

SDF COM Toolkit позволяет расширить функциональность Autodesk MapGuide Viewer, обеспечивая пользователю возможность создавать, редактировать или удалять актуальные SDF-файлы, не прибегая к какой-либо конвертации. Детальные примеры работы таких функций при помощи JavaScript и ColdFusion или ASP приведены в Autodesk MapGuide Developer`s Guide. Хотя сама по себе возможность редактирования данных в ArcIMS может показаться важной, большинство web-разработчиков используют эти приложения только для обеспечения взаимодействия с большей аудиторией, не предоставляя ей прав на внесение изменений, а лишь позволяя ГИС-профессионалам совместно аннотировать, просматривать и анализировать ГИС-проекты. Прямое редактирование данных в таких приложениях требуется в весьма редких случаях.

В отличие от ArcIMS, Autodesk MapGuide позволяет создавать и сохранять в MWF-файле составные буферные зоны из различных типов объектов (когда объекты сильно рассредоточены).

Autodesk MapGuide не может использовать редлайнинг непосредственно, однако предусмотрена возможность применения его функционала с помощью объекта MGRedLineSetup в Autodesk MapGuide Viewer API.

Выбор объектов внутри буфера в Autodesk MapGuide Viewer
Выбор объектов внутри буфера в Autodesk MapGuide Viewer

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

Кроме того, Autodesk MapGuide позволяет селектировать и деселектировать объекты карты посредством SHIFT-PICK, что особенно эффективно в комбинации с функцией создания буфера, с помощью которой можно добавлять или удалять участки, дороги и т.д. из выбранного в пределах буфера набора объектов.

ArcIMS не имеет таких возможностей. Кроме того, выбор объектов во вьюерах ArcIMS ограничен лишь пределами активного слоя, поэтому пользователи могут выбирать объекты только с одного слоя (или Участки, или Здания), но не с двух сразу. В этом программном комплексе используются стандартные функции печати Microsoft Internet Explorer.

ArcIMS Java Viewers позволяют добавлять Shape-файлы и слои ArcSDE из локальных машин, а также картографические сервисы с других ArcIMS web-сайтов.

Существенно, что ArcIMS Author не обеспечивает доступ к данным из другого ArcIMS web-сайта, тогда как средствами Autodesk MapGuide возможна настройка этой функции в Author перед просмотром карт во вьюере. Сравнение функциональности технологий вьюеров, требующих инсталляции и загрузки, приведено в таблице 2.

Таблица 2

Autodesk MapGuide Viewers ArcIMS Java Viewer
Требует загрузки + +
Поддержка Netscape + + 1
Выбор объектов в прямоугольнике + +
Выбор объектов в радиусе + -
Выбор группы объектов с разных слоев + -
Выбор группы SHIFT-PICK + -
Буферизация
Создание буфера + +
Буфер создает новый слой + -
Выбор внутри буфера + +
Создание составных буферов + +
Запросы
Идентификация — выбор географических объектов и просмотр данных + +
Установка единиц измерений карты + +
Установка способа селектирования (в центроиде или в пересечении) + -
Установка единиц измерений указателя в поле экрана (Lon/LaT или системы координат карты) + -
Представление
MapTips/Map Tooltips + Только в отношении объектов
Настройка печати + -
Файлы онлайновой помощи + -

Авторизация карт и публикация в Internet

Autodesk MapGuide Author позволяет добавлять в MWF-файл пространственные и атрибутивные данные в качестве слоев и редактировать свойства этих слоев. Предусмотрена возможность сохранения MWF-файла в формате MWX для использования в Autodesk MapGuide LiteView и XML. Такой MWX-файл можно редактировать в текстовом редакторе или XML, а затем вновь открыть его в Autodesk MapGuide Author с внесенными изменениями.

ArcIMS Author тоже позволяет пользователям представлять данные послойно и редактировать их свойства, однако сохраняет карту как AXL-файл (ESRI-версию MWF/MWX-файла), поэтому связь с удаленными базами данных (IBM DB2, IBM Informix, Microsoft SQL Server и Oracle) может осуществляться только посредством программы ESRI SDE. Если пользователь решит произвести редактирование в AXL-файле с помощью текстового или XML-редактора, при переносе файла обратно в ArcIMS Author изменения будут потеряны. Это делает настройку AXL-файла весьма проблематичным делом.

Autodesk MapGuide предоставляет большее число инструментов для авторизации карт и более развитый принцип организации поддержки для ГИС-разработчиков в Internet. В ArcIMS также предусмотрено много инструментов для разработки карт, однако большая часть основных функций перенесена на сторону клиента (вьюера).

Почему ArcIMS Viewers имеют большую функциональность, нежели инструментарий авторизации карт, предлагаемый ArcIMS? По идее, модуль авторизации (Author) должен обладать по крайней мере тем же набором функциональных возможностей, что и конечный пользователь (вьюер). В конце концов, нужно не только создавать карты, но и обеспечивать последующий доступ к исходным данным. Если разработчик хочет предоставить конечному пользователю возможность буферизации, он еще до публикации карты в Internet должен иметь представление о работе этой функции.

Autodesk MapGuide предлагает более совершенную программу, в которой, помимо возможностей собственно вьюера, реализованы специальные функции авторизации и просмотра, органично интегрированные в единый интерфейс пользователя, в то время как ArcIMS Author обеспечивает выполнение только части собственной функциональности Java-вьюеров.

Простота использования Autodesk MapGuide для авторизации карт

Пользователи Autodesk MapGuide могут простым нажатием правой клавиши мыши получить доступ ко всем представленным в меню инструментам, пользователи же ArcIMS такой возможности лишены. Кроме того, в Autodesk MapGuide предусмотрено множество способов получить доступ к различным свойствам слоя и карты, что делает пользовательский интерфейс более дружественным.

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

После поиска объектов карты с использованием функций SQL Expression/Query Builder и Find/Select в ArcIMS Author в том же диалоговом окне появляется функционал Zoom-To и Pan-To, но при этом возникают некоторые серьезные ограничения: ArcIMS Author не может одновременно редактировать свойства нескольких слоев и создавать из них группы слоев (слои в пределах слоев).

Autodesk MapGuide обеспечивает работу со свойствами (такими как ширина и цвет линии), а также с источниками данных слоя в соответствии с их собственными установками.

Одним из собственных свойств слоя является источник данных, что обусловливает простоту работы в среде Autodesk MapGuide. При работе с ArcIMS Author, изменяя источник данных, необходимо, чтобы пользователи удалили и сам слой со всеми связанными с ним свойствами, а затем из другого источника данных добавили новый с переопределенными свойствами. Для сетевой технологии это — ущербное решение.

Для выполнения многократных последовательных изменений в слое используется кнопка ArcIMS Author`s Apply диалогового окна Layer Properties. Она срабатывает только после многократного нажатия, соответствующего количеству изменений, что делает опцию очень ненадежной.

Диалоговое окно подготовки карты к печати в среде Autodesk MapGuide
Диалоговое окно подготовки карты к печати в среде Autodesk MapGuide
Функции предварительного просмотра в распечатываемой карте Autodesk MapGuide
Функции предварительного просмотра в распечатываемой карте Autodesk MapGuide

Пользователь, работающий в среде ArcIMS, испытывает недостаток функциональных возможностей при настройке печати карты и вынужден использовать предлагаемые по умолчанию средства печати Windows.

В отличие от этого, Autodesk MapGuide, помимо возможностей Windows, предлагает и свои собственные функции настройки печати, позволяет пользователю установить параметры печати (масштабную линейку, стрелку сторон света, время и дату, URL и др.). Кроме того, программа обеспечивает предварительный просмотр печатаемой карты. С помощью API Autodesk MapGuide Viewer функционал свойств печати может быть значительно расширен.

Разработка и просмотр карты с помощью инструментария Autodesk MapGuide Author
Разработка и просмотр карты с помощью инструментария Autodesk MapGuide Author

Широкая функциональность картографического «проводника» и наличие предварительного просмотра печатаемых карт — всего лишь два примера, иллюстрирующих простоту использования Autodesk MapGuide Author. Инструментарий авторизации карт Autodesk MapGuide имеет вид, одинаковый с Autodesk MapGuide Viewer, что позволяет упростить процесс разработки, обеспечить большую эргономичность и производительность, сократить время контроля качества.

Autodesk MapGuide предоставляет пользователю возможность изменять индивидуальные свойства слоя. Для того чтобы программа произвела необходимые изменения и закрыла диалоговое окно Layer Properties, требуется нажать кнопку ОК. При повторном открытии этого диалогового окна Autodesk MapGuide Author загружает карту в том виде, который она имела на завершающем этапе последней работы.

Публикация в Internet

Autodesk MapGuide Author создает карты в виде MWF-файлов, а ArcIMS Author — в виде AXL-файлов. Для публикации AXL-файла в Internet используется ArcIMS Designer, который позволяет неопытному ГИС-пользователю проектировать web-сайты и просматривать авторизированные карты на web-страницах.

Бесспорно, что в Autodesk MapGuide Author разрабатывать и публиковать карты в Internet существенно проще и быстрее, чем в ArcIMS Author.

ArcIMS Designer

ArcIMS Designer — инструмент для настройки несложных Internet-приложений в пределах восьми шагов. Создаваемые Мастером приложения просты, поэтому многие пользователи хотят разработать свой интерфейс и интегрировать базы данных в Internet. Вот тогда и приходит понимание, почему ArcIMS имеет репутацию слабой платформы.

ArcIMS Designer ведет пользователя через процесс выбора многих свойств карты, которые в Autodesk MapGuide определяются посредством Autodesk MapGuide Author. Такой подход Мастера применительно к Internet-разработкам создает локальную директорию для web-файлов, а также связей в директории с картографическими сервисами (Image или Feature), созданными в ArcIMS Server Administrator. При работе в Autodesk MapGuide это соответствовало бы написанию web-страницы, которая указывает на MWF-файл в тэге <объект>.

ArcIMS Designer предоставляет пользователю возможность выбрать легенду, масштабную линейку и тип карты путем включения и выключения соответствующих слоев. В Autodesk MapGuide такой выбор осуществляется посредством Autodesk MapGuide Author.

Хотя особенности работы в ArcIMS Designer могут быть в какой-то мере объяснены потребностями некоторых потенциальных пользователей, выполняемые функции непоследовательны во всем продукте. Например, Java Standard Viewer предоставляет все возможные функции просмотра карты, но в то же время не позволяет выполнять настройку приложений. А выбрав Java Custom Viewer, пользователь сможет настраивать приложения с HTML и JavaScript, но не получит прямого доступа к MapTips или функциям EditNotes.

Работа с Autodesk MapGuide требует знакомства с методами проектирования web-проектов и HTML. Как и большинство иных способов разработки приложений, ArcIMS Designer имеет свои плюсы и минусы: несомненные преимущества быстрого запуска соседствуют с генерацией машинного кода и доступом к заранее предопределенному набору функциональных возможностей, которые потребуют больших затрат времени для развития и настройки таких приложений.

Хотя Autodesk MapGuide и не содержит полного набора компонентов Мастера-разработчика, этот класс функциональных возможностей публикации в Internet может быть развит с помощью Dynamic Authoring Toolkit (DAT), обеспечивающего доступ ко всем свойствам MWF-файла через XML. Один из примеров использования DAT — приложение, запускающее web-страницу, с помощью которой пользователь может выбирать систему координат MWF-файла, добавляемые слои и дополнительные функции вьюера, доступные к размещению в выпадающем меню Autodesk MapGuide Viewer. По существу, это сервис, выполняющий ту же функцию, что и ArcIMS Designer. В приложение такого DAT-примера может быть включено большое количество свойств, а также добавлены ColdFusion- и ASP-коды.

Раздел Sample Applications web-сайта Autodesk MapGuide содержит превосходный пример использования такой технологии — Build your own LiteView Application, там же размещен исходный код, демонстрирующий функциональные возможности, подобные ArcIMS Designer.

Простой Мастер инсталляции в Autodesk MapGuide весьма удобен для начинающих пользователей. Несложные способы установки эффективны для реализации некоторых приложений и настроек другого пользователя, а также для быстрого прогона программы, однако в некоторых ситуациях могут возникнуть определенные сложности, связанные возможностями программы. Проблемы такого рода вполне разрешимы: Autodesk MapGuide позволяет адаптировать средства Мастера разработки приложений, поскольку поддерживает открытые стандарты разработки API и предлагает понятную документацию.

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

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

Autodesk MapGuide Author предоставляет возможность выбора основных характеристик карты (система координат, размер, расположение сервера, параметры безопасности данных)
Autodesk MapGuide Author предоставляет возможность выбора основных характеристик карты (система координат, размер, расположение сервера, параметры безопасности данных)

После сохранения произведенных в ArcIMS Author изменений необходимо регенерировать картографический сервис и перезагрузить карту во вьюере. Для добавления нового слоя данных карту следует переиздать в ArcIMS Designer (иными словами, web-директория, содержащая результаты всей работы, должна быть переписана). Затем с помощью Server Administrator требуется регенерировать сервис.

Произведенные в карте изменения отражаются во вьюере. Например, когда пользователь добавляет новый слой, изменяет масштаб изображения какого-либо участка карты, сохраняет карту и регенерирует картографический сервис, вьюер показывает в главном картографическом окне участок с размерами созданной ранее карты, а размеры новой карты сохраняются в ArcIMS Author в окне картографического указателя. Чтобы произвести все изменения, карта должна быть переиздана с помощью ArcIMS Designer. В зависимости от характера выполненных изменений (о чем в документации не упоминается) пользователю, возможно, придется регенерировать сайт с помощью Designer.

И Autodesk MapGuide Author, и ArcIMS Author (см. таблицу 3) позволяют пользователю создавать тематические карты, устанавливая для различных слоев значения по данной теме. Однако поле параметров темы в ArcIMS должно быть добавлено из Shape-файлов. В Autodesk MapGuide это поле автоматически заполняется значениями из SDF-файла или OLE DB-источника данных, что в конечном счете значительно упрощает работу со средствами ГИС-анализа в Internet.

Таблица 3

Функциональность Author Autodesk MapGuide 6 ESRI ArcIMS 4
Save as MWF, MWX AXL
Save individual layer + -
Copy map as EMF, URL JPEG
Open file from http location + -
Navigation
Zoom width + -
Zoom scale + -
Zoom selected object + +
Zoom goto address — address matching + +
Selection
Select objects by rectangle + -
Select objects by radius + -
Select objects by map feature + +
Select objects by polygon + -
Select multiple objects from different layers + -
Select objects wiht SHIFT-Pick + -
Buffering
Create buffer + -
Buffer creates new layer + -
Select within buffer + -
Create complex buffer + -
Authoring
Link map feature to URL + -
Measure distance + -
MapTips + Только на одном слое
Add scale bar +
Labeling + +
Map preview + -
Change coordinate system + -
Create queries/stored queries + +
Thematic mapping based on OLE DB data sourse + -
Graduated symbols + +
Security
Map password protected setting + -
Track map usage + -

Процесс инсталляции ArcIMS для нескольких серверов существенно сложнее, чем Autodesk MapGuide, и состоит из следующих этапов: пользователю требуется обеспечить доступ в директорию на хост-машине с установленной ArcIMS, отредактировать файл arcimsdefaults.properties, изменить параметры службы web-сервера Startup на This Account (системная учетная запись работать не будет), открыть общий доступ к директории данных (каждый ArcIMS Spatial Server должен обеспечивать доступ ко всем данным, отображенным во всех службах ArcIMS) и, наконец, отредактировать еще один файл конфигурации карты. Большое число производимых действий, сопровождающихся многочисленными регламентациями и ограничениями, не только требует значительных затрат времени, но и увеличивает риск появления ошибок. Напротив, при инсталляции Autodesk MapGuide разработчику достаточно лишь задать дополнительные серверы или тип в URL, имя пользователя и пароль посредством графического интерфейса.

ArcIMS Administrator позволяет пользователю добавлять или публиковать карты на сервере при помощи Image Service (доступен для HTML- и Java-вьюеров), который предлагает пользователю «снимок» карты, или Feature Service (доступен только для вьюера Java Plug-in), который организует потоки передачи свойств карты пользователю.

В программном продукте компании ESRI доступ к содержимому базы данных (а также к файлам ESRI-coverages) и масштабирование реализуются с помощью ArcSDE. Однако Autodesk MapGuide Server, разработанный специально для работы напрямую с любыми ODBC/OLE-совместимыми базами данных, включая SQL Server и Oracle (Oracle Spatial или Oracle Locator), обладает более широкими возможностями масштабирования и характеризуется большей функциональностью. Процесс соединения Autodesk MapGuide с базой данных Oracle подобен соединению с Microsoft Access или DBF-файлом. Кроме того, Autodesk MapGuide Server может реализовывать прямую связь с Oracle Spatial, ESRI SHP и AutoCAD DWG, делая процесс преобразования данных в формат SDF Loader ненужным.

Autodesk MapGuide Sever Administrator позволяет пользователю без особых затруднений осуществлять прямую связь с любым ODBC/OLE DB-источником данных.

Autodesk MapGuide Server Administrator
Autodesk MapGuide Server Administrator

ArcIMS Administrator не обладает подобными функциями, поэтому не может создавать тематический слой по данным, непосредственно взятым из ODBC/OLE DB-источника данных: связь с базой данных должна быть выполнена через ArcSDE.

Кроме того, Autodesk MapGuide позволяет создавать точечные слои по данным, взятым непосредственно из ODBC/OLE DB-источника, с той же простотой, что и добавлять SDF-слой. Это идеально для визуализации часто обновляемого содержимого баз данных (например, приложений, обеспечивающих мониторинг подвижных объектов с использованием GPS). Чтобы решить эту задачу в ArcIMS, необходимо использовать ArcSDE — сложное промежуточное программное обеспечение, требующее от пользователя высокого уровня технических и профессиональных знаний.

В документации ESRI по ArcIMS отмечено, что доступ к Shape-файлам осуществляется «намного быстрее, если Shape-файлы размещены на том же компьютере, что и ArcIMS Spatial Server». В Autodesk MapGuide Server размещение SHP-файлов не влияет ни на качество доступа к ним, ни на скорость работы.

Работая с Autodesk MapGuide, создатели карт могут использовать несколько серверов или размещенные на различных серверах Autodesk MapGuide Servers базы данных, содержащие точечные картографические слои. Таким образом, эта программа позволяет одновременно обрабатывать многократные запросы как к одному серверу, так и к их группе (серверному кластеру) со всеми преимуществами, которые предоставляют многопроцессная обработка и выравнивание нагрузки. Так, имея доступ к двум Autodesk MapGuide Server, при создании карт разработчики могут разместить растровые слои на одном сервере, а векторные — на другом. Кроме того, если такие серверы идентичны по конфигурации и содержат дублирующие данные, Autodesk MapGuide позволяет обнаружить сервер, который в настоящий момент имеет меньший траффик, и для выравнивания загрузки передать эти данные на другой сервер. ArcIMS таким уровнем масштабируемости не обладает.

Autodesk MapGuide располагает более гибкими механизмами обеспечения безопасности данных, чем ArcIMS.

Добавление пользователей, имеющих доступ к ресурсам через Autodesk MapGuide Author и Viewer AP, осуществляется при помощи MapGuide Server Administrator. В будущем появится возможность ограничивать доступ к отдельным ресурсам: источникам пространственных данных, источникам баз данных, файлам растровых изображений и данным, доступным через функцию Zoom GOTO.

Таблица 4

Server AutodeskMapGuide 6 ESRIArcIMS 4
Регламентированный доступ к ресурсам (по соображениям безопасности) + -
Доступ к данным на удаленном web-сервере + -
Сбалансированная загрузка ресурса + +
Прямое соединение с OLE DB/ODBC + -
Прямой доступ к базам данных
Oracle + -
SQL Server + -
Sybase + -
Поддержка векторных пространственных данных
ESRI SHP + +
DWG + * 2
ESRI ARC/INFO coverages * 3 * 4
MapInfo MID/MIF * 3 * 2
Intergraph DGN * 3 * 2
Atlas BNA * 3 * 2
ASCII comma-delimited CSV * 3 -
Поддержка растровых пространственных данных
BMP + +
CALS + -
ECW + -
MrSID + +
PNG + +
TGA + +
TIFF + -
Поддержка геопривязки растров
ESRI world files + +
MapInfo tab files + -
Geo TIFF files + +

Комментарий автора

Взяться за этот анализ меня заставила необходимость выбора качественных и функциональных HTML-вьюеров, поскольку ArcIMS Java Viewers, с которыми я работал, явно не подходили для MSIE. То же самое можно сказать и об ArcIMS Manager. И хотя и Author, и Design, и Server Administrator могут быть использованы отдельно, большая часть документации обрабатывается с помощью ArcIMS Manager. Работа с ArcIMS вызывала большие проблемы, а попытки решить их с помощью разработчиков не увенчались успехом: на обращение в службу технической поддержки ESRI следовал ответ лишь по прошествии четырех дней, однако и в нем не содержалось никаких полезных советов.

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

Оба сравниваемых продукта требуют определенных навыков при создании большинства приложений, за исключением наиболее общих. Хотя комплект ArcIMS Designer удобен для пользователей, предлагаемые в нем стандартный шаблон и возможности не будут востребованы разработчиками, которым необходима возможность настраивать генерацию отчетов, интерфейс и модифицировать базовую функциональность. Построение и развитие приложений с развитыми ГИС-функциями в ArcIMS с помощью предоставляемых ESRI инструментов потребует от компаний значительных расходов. Autodesk MapGuide предлагает разработчикам лучшие среду и технологию развития сетевых ГИС-приложений.

ArcIMS обеспечивает возможность разработки приложений для HTML, Java, ActiveX и ColdFusion. При выборе опции HTML Viewer в ArcIMS Designer для построения приложений создаются и форматируются HTML и JavaScript. Внешний вид, настройки и функциональность приложения определяются в зависимости от того, каким способом HTML Viewer связывается с ArcIMS Servlet Connector. Настройка HTML Viewer осуществляется путем изменения существующего кода (главным образом, JavaScript), созданного посредством ArcIMS Designer.

ArcIMS Application Server Connectors (в состав которых входят стандартный коннектор ArcIMS Servlet Connector и альтернативные Java Connector, ColdFusion Connector и ActiveX Connector) предназначены для связи web-сервера с ArcIMS Application Server и позволяют разрабатывать приложения с помощью различных языков программирования. Обмен данными (сообщениями) с ArcIMS Spatial обеспечивает протокол Server ArcXML. Таким образом, структура ArcIMS довольно сложна, ее освоение требует от пользователя много сил и времени. В свою очередь, установка и конфигурация Autodesk MapGuide для создания среды развития приложений более легкая, поскольку используемые здесь протоколы — открытые, инструменты (стандартные, API и др.) — законченные и самодостаточные, совместимые со многими другими системами и базами данных, документация — ясная и простая. Но самое главное — этот программный продукт устойчив и не подвержен сбоям.

Развитие приложений и настройка ArcIMS выполняются с помощью ArcXML или путем транслирования с другого языка на ArcXML. Трансляцию языков обеспечивают различные ArcIMS Application Server Connectors, которые поставляются с ArcIMS, однако требуют пользовательской установки. Autodesk MapGuide в промежуточном программном обеспечении не нуждается.

Для модификации режимов визуализации атрибутивной информации, изменения внешнего вида и настроек web-приложения ArcIMS HTML Viewer API использует функции JavaScript, объединенные названием Viewer JavaScript Library. Кроме того, предусмотрен Java Viewer API — набор JSP-тэгов, который содержит модель API, подобную HTML Viewer. Хотя дифференцированные коннекторы ArcIMS позволяют создавать разнообразную окружающую среду разработки приложений, каждый из них имеет различные ограничения. Кроме того, эти коннекторы не согласованы между собой. Autodesk MapGuide в части развития своих Viewer API намного более открыт и последователен, что позволяет осуществлять процесс разработки приложений в более короткие сроки.

ESRI рекомендует, чтобы разработка приложения производилась после его создания в ArcIMS Designer. Такая стратегия помогает начинающему пользователю быстро выполнить установку и запуск приложения, однако создает трудности для разработчика, который должен знать не только принципы объектного программирования, но также и особенности приложений, и технику кодирования. Для тех, кто использует собственную технику построения приложений и свой «набор инструменто», предложенный порядок работы будет крайне неудобен.

Многие из функций JavaScript, необходимых для настройки ArcIMS HTML Viewer, фактически являются свойствами карты, редактировать которые в среде Autodesk MapGuide намного проще: следует лишь произвести изменения в Autodesk MapGuide Author и сохранить MWF-файл — сделанные изменения после перезагрузки такого файла будут автоматически отражены во вьюере. Интегрированные с CF-studio CFX-объект, ArcIMS ColdFusion Connector и панель инструментов предусмотрены и в Autodesk MapGuide.

Кроме того, Autodesk MapGuide предоставляет разработчикам два мощных инструментальных средства развития: Dynamic Authoring Toolkit и SDF COM Toolkit, которые позволяют быстро строить более развитые приложения, чем ArcIMS. Dynamic Authoring Toolkit обеспечивает доступ ко всем свойствам MWF-файла. Так, например, предоставляется возможность создавать приложения с таким же функционалом, которым обладают Autodesk MapGuide Author или ESRI ArcView.

Инструментарий SDF COM Toolkit позволяет конечному пользователю редактировать пространственные данные непосредственно в SDF-файлах и наблюдать производимые изменения в реальном времени, чего MapNotes и EditNotes обеспечить не могут. Прямой доступ к SDF-файлам через SDF COM Toolkit предоставляет возможность создавать другие серверные приложения, такие как маршрутизация и SDF-конверторы.

Заключение

Большинство ГИС-пользователей нуждается лишь в просмотре и сетевых запросах данных по технологиям, предлагаемым Autodesk и ESRI, однако Autodesk MapGuide обеспечивает более совершенный анализ данных. ArcIMS все еще находится на ранней стадии развития и характеризуется незаконченностью свойств, функций и процессов. Основное преимущество этой программы заключается в том, что она поддерживает ESRI-продукты, позволяя дистрибутировать в Internet изображения, получаемые из SHP-файлов. Однако это преимущество — мнимое, поскольку Autodesk MapGuide также обеспечивает возможность работы с ESRI-продуктами, а развитый функционал и высокие параметры масштабируемости делают его лучшим решением для разработки Internet-систем.

  1. Java Standard Viewer поддерживает только версии 4.75 Netscape и 6.0. Java Custom Viewer и не поддерживает Netscape. 
  2. Должны быть преобразованы в Shapefile в ArcViewT или ArcGIST. 
  3. Конвертированы с помощью SDF Loader. 
  4. Связь должна осуществляться через ArcSDE. 
Алекс Фордис
E-mail:
Перевод с английского Андрея Макурина