Autodesk MapGuide 6 и ArcIMS 4
Сравнение инструментов и возможностей
Преимущества форматов SDF перед SHP при публикации в Internet
Вьюеры, не требующие загрузки plug-in
Авторизация карт и публикация в Internet
Простота использования Autodesk MapGuide для авторизации карт
Комментарий переводчика
Предлагаем вниманию читателей статью Алекса Фордиса (Alex Fordyce), разработчика ГИС-проектов в Internet. Результаты проведенного автором сравнительного анализа возможностей программ Autodesk MapGuide 6 и ArcIMS 4, безусловно, могут показаться субъективными. Но несмотря на то, что часть приведенной здесь информации изложена недостаточно корректно либо вообще устарела, для специалистов в области ГИС, занимающихся разработкой и проектированием распределенных ГИС-проектов, данная публикация представляет несомненный интерес. И это неудивительно: практика показывает, что публикация карт в Internet по технологии компании ESRI, использующей единое хранилище данных на основе СУБД, обойдется разработчику сетевых распределенных ГИС-проектов примерно вдвое дороже, чем аналогичная (близкая по возможностям) технология от Autodesk.
Введение
Компания Autodesk в середине 90-х годов прошлого века впервые предложила ГИС-инструментарий для интерактивной работы в Intranet/Internet с динамическими картами, базирующимися на векторной модели представления пространственных данных. С тех пор наилучшим решением для разработки сетевых ГИС-проектов и дистрибуции карт в режиме реального времени по праву считается программный комплекс Autodesk MapGuide (www.mapguide.ru), характеризующийся легкостью авторизации карт, широкими возможностями масштабирования и развития ГИС-проектов в сетевом окружении, гибкостью разработки приложений на основе API-вьюера (ActiveXcomponent).
Autodesk MapGuide полноценная программная среда, позволяющая разрабатывать карты и приложения любой функциональности, дающая возможность публиковать в Internet карты, исходные данные которых содержатся в различных удаленных базах данных, и обеспечивающая интеграцию ГИС-данных разных форматов (таких как SHP, MIF/MID, DGN, DWG и ESRI).
Autodesk MapGuide — простая и эффективная архитектура программного обеспечения
ESRI ArcIMS — более сложная архитектура
В отличие от технологии 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 состоит из трех основных компонентов, специально разработанных для обмена данными в сетевом окружении и предназначенных для управления динамическими картами посредством 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 позволяет работать с четырьмя типами вьюеров:
• Plug-in использует формат Netscape;
• ActiveX Control использует формат Microsoft Internet Explorer;
• Java Viewer для операционных систем Sun и Macintosh;
• 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
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 обеспечивает работу с тремя типами вьюеров: 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.
Таблица 1
Вьюеры, не требующие загрузки 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.
В ArcIMS предусмотрены два вьюера для Java Java Standard Viewer и Java Custom Viewer, которые требуют установки plug-in. В отличие от Autodesk MapGuide, эта программа обеспечивает выполнение прямого редактирования данных. Однако с помощью SDF COM Toolkit подобную функциональность можно добавить и в приложения Autodesk MapGuide, а кроме того, предложить разработчикам множество примеров для обучения.
Выбор объектов внутри буфера в Autodesk MapGuide Viewer
Использование 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 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.
Авторизация карт и публикация в 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-вьюеров.
Таблица 2
*Java Standard Viewer поддерживает только версии 4.75 Netscape и 6.0. Java Custom Viewer, но не поддерживает Netscape.
Простота использования 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, то при изменении источника данных ему необходимо удалить и сам слой со всеми связанными с ним свойствами, а затем из другого источника данных добавить новый с переопределенными свойствами. Для сетевой технологии это является ущербным решением.
Диалоговое окно подготовки карты к печати в среде Autodesk MapGuide
Функции предварительного просмотра в распечатываемой карте Autodesk MapGuide
Разработка и просмотр карты с помощью инструментария Autodesk MapGuide Author
Для выполнения многократных последовательных изменений в слое используется кнопка ArcIMS Author's Apply диалогового окна Layer Properties , которая срабатывает только после многократного нажатия, соответствующего количеству изменений, что делает опцию очень ненадежной.
Пользователь, работающий в среде ArcIMS, ощущает недостаток функциональных возможностей при настройке печати карты и поэтому вынужден использовать предлагаемые по умолчанию средства печати Windows.
В отличие от этого, Autodesk MapGuide, помимо возможностей Windows, предлагает и собственные функции настройки печати, позволяет пользователю установить параметры печати (масштабную линейку, стрелку сторон света, время и дату, URL и др.). Кроме того, эта программа обеспечивает предварительный просмотр печатаемой карты. А с помощью API Autodesk MapGuide Viewer функционал свойств печати может быть значительно расширен.
Широкая функциональность картографического «проводника» и наличие предварительного просмотра печатаемых карт всего лишь два примера, иллюстрирующих простоту использования 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.
Autodesk MapGuide Author предоставляет возможность выбора основных характеристик карты (система координат, размер, расположение сервера, параметры безопасности данных)
Таблица 3
Хотя особенности работы в 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 позволяет устанавливать размеры видимой области: пользователь может работать с отдельными участками и сохранять произведенные изменения, не нарушая целостности карты.
После сохранения произведенных в ArcIMS Author изменений необходимо регенерировать картографический сервис и перезагрузить карту во вьюере. Для добавления нового слоя данных карту следует переиздать в ArcIMS Designer (иными словами, web-директория, содержащая результаты всей работы, должна быть переписана). Затем с помощью Server Administrator требуется регенерировать сервис.
Произведенные в карте изменения отражаются во вьюере. Например, когда пользователь добавляет новый слой, изменяет масштаб изображения какого-либо участка карты, сохраняет карту и регенерирует картографический сервис, вьюер показывает в главном картографическом окне участок с размерами созданной ранее карты, а размеры новой карты сохраняются в ArcIMS Author в окне картографического указателя. Чтобы произвести все изменения, карту нужно переиздать с помощью ArcIMS Designer. В зависимости от характера выполненных изменений (о чем в документации не упоминается) пользователю, возможно, придется регенерировать сайт посредством Designer.
Autodesk MapGuide Server Administrator
И Autodesk MapGuide Author, и ArcIMS Author (табл. 3) позволяют пользователю создавать тематические карты, устанавливая для различных слоев значения по данной теме. Однако поле параметров темы в ArcIMS должно быть добавлено из Shape-файлов, а в Autodesk MapGuide это поле автоматически заполняется значениями из SDF-файла или из OLE DB-источника данных, что в итоге значительно упрощает работу со средствами ГИС-анализа в Internet.
Процесс инсталляции 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-источником данных.
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
* Конвертированы с помощью SDF Loader.
** Должны быть преобразованы в Shapefile в ArcView или ArcGIS.
*** Связь должна осуществляться через ArcSDE.
Комментарий автора
Взяться за этот анализ меня заставила необходимость выбора качественных и функциональных 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-систем.
Алекс Фордис Независимый ГИС-консультант, специалист по разработке приложений для Internet и настольных ГИС, эксперт в области программного обеспечения ESRI и Autodesk. |
«САПР и графика» 3'2005