Шел по городу
MapGuide
Для
внимательных читателей нашего журнала, которым небезразлично слово «ГИС», эта
статья будет третьей по счету (без всяких аналогий с тремя источниками
и тремя составными частями...). По-прежнему оставляя на будущее весьма
актуальный вопрос выбора инструментальной ГИС (честное ГИСоведское, в следующем
номере покров тайны с этого вопроса будет снят), поговорим о совершенно
необходимом компоненте любой ГИС -- системе просмотра информации
в среде Internet/Intranet. Мы-то абсолютно уверены, что Autodesk MapGuide
R.5.0 -- то, что нам всем нужно. И очень надеемся, что после прочтения
этой статьи наши мнения будут совпадать.
Итак, что же такое Autodesk
MapGuide R.5.0 и для чего он вам нужен.
В первую очередь для того,
чтобы данные, разбросанные по разным компьютерам, а то и по разным
городам и странам, могли использоваться для единого пространственного анализа.
Чуть поясню на наболевшем примере. В нашем городе в муках и печалях
рождается адресный план, то есть невероятное нагромождение многоугольничков,
обозначающих дома, линий, отмечающих центральные (осевые) линии улиц и точечных
объектов, обозначающих собственно адресные привязки, чаще по подъездам. Когда
работа близится к концу, авторов начинают раздирать взаимоисключающие желания:
первое -- побыстрее представить все свершенное на суд общественности
и купаться в лучах заслуженной славы, и второе -- сделать
как-нибудь так, чтобы все результаты не пошли по рукам без какого-либо материального
вознаграждения авторам, а это так часто случается в нашей стране,
где соблюденное авторское право -- такая же редкость, как какой-нибудь
австралийский утконос.
Есть отличное решение проблемы:
положить эти данные, весьма всем необходимые, на некий городской сервер и обеспечить
желающим простой и понятный доступ к этому информационному ресурсу.
Чтобы это произошло, требуется целый набор обязательных функций:
- некий серверный механизм,
обеспечивающий многопользовательский доступ к нашему информационному
ресурсу;
- инструмент для оформления
ресурса (каким цветом что подсвечивать, какие информационные слои предоставлять
к просмотру и с какого увеличения, с какими базами данных и по
каким ключевым полям обеспечивать связь с графическими объектами;
- собственно программы
просмотра (на компьютерном жаргоне -- вьюеры).
Теперь по порядку.
Первая функция обеспечивается
компонентой, которая называется Autodesk MapGuide Server. Устанавливается просто,
если вы знакомы с тем, как устроены Windows NT Server или Windows 2000
Server -- потому что именно на этих платформах она и живет.
 |
|
ГИС
в интернет... Autodesk MapGuide создан для этого!
|
|
Вторая компонента
-- это Autodesk MapGuide Author, после применения которого, как поет
Земфира, «веревочки связаны». То есть установлены все связи и иерархии,
а пользователь, «кликая» по понятным кнопкам абсолютно логичного интерфейса,
и не поймет вовсе, что собственно карта находится на сервере мэрии: слой,
обозначающий туристические агентства, «живет» на сервере местных «Желтых страниц»,
а некие специальные механизмы поиска и заказа «горящих» путевок реализованы
на сервере местного Internet-провайдера. Результатом деятельности Autodesk MapGuide
Author является MWF (Map Window File), в котором все связи и обозначены.
Но только связи! Попытка «достать» что-либо из упомянутых ресурсов без соответствующей
авторизации и регистрации будет сурово пресечена Autodesk MapGuide Server'ом.
И наконец вьюеры-просмотрщики.
Это надстройки для любых Internet-браузеров: и для широко распространенного
Internet Explorer, и для Netscape Communicator -- уже снятого
с производства, но тем не менее второго по популярности. То есть весь ГИС
«смотрится» прямо из браузера, из специально подготовленного HTML-файла. Кстати,
нелишне будет напомнить, что в состав Autodesk MapGuide R.5.0 включается
ColdFusion Studio 4.5 от компании Allair, известной среди веб-дизайнеров популярным
продуктом HomeSite. Но ColdFusion Studio 4.5 -- это намного более
развитый продукт, с ним проектирование специализированных HTML-страниц
пойдет куда быстрее.
Чтобы пользователь не мучил
себя пустыми расчетами, как наиболее экономично и эффективно построить
систему на основе Autodesk MapGuide R.5.0, помимо разрозненных компонентов
предлагаются так называемые «сюиты», приобретение которых выгоднее покупки «по
кускам» -- такова ценовая политика компании Autodesk.
Думаете, это всё? Нет, рассказ
об использовании Autodesk MapGuide R.5.0 только в самом начале. Потому
что никто не хочет покупать «мертвую», закрытую систему. А открытость определяется
наличием и развитостью интерфейса программиста -- API. Это,
определенно, сильное место Autodesk MapGuide R.5.0. Чтобы не быть голословным,
несколько весьма конкретных примеров.
1. «Задача коммивояжера»,
алгоритмическая классика.
В вашем распоряжении граф
-- топологическая сеть улиц (то есть каждая улица разбита на отрезки
от перекрестка до перекрестка). Вы знаете длины ребер графа, и у вас есть
так называемые весовые коэффициенты, помогающие правильно оценить пропускную
способность каждого из них. Ведь улица может иметь плохое дорожное покрытие,
только одностороннее движение, а может и вовсе быть перекрыта из-за
ремонтных работ. Вся эта информация и задается весовыми коэффициентами.
Пользователь указывает исходную
точку, в которой находится на низком старте наш экспедитор, менеджер по
продажам или еще кто-то, для кого оптимальность движения -- не
пустой звук. Далее указываются точки, которые нужно «посетить», и запускается
алгоритм оптимизации. Причем возможны варианты: оптимальный путь просчитывается
без учета порядка указания точек, то есть будут посещены все пункты, а порядок
посещения определит алгоритм, исходя из минимизации общего пути. Или путь все
равно будет оптимален, но порядок посещения окажется именно таким, как указал
его пользователь.
А если добавить, что все
это делается специальной программной надстройкой (plug-in) для Autodesk MapGuide
Viewer, но с обязательной авторизацией в Autodesk MapGuide Server,
то функции дополнительной программы для Autodesk MapGuide R.5.0, которую
мы назвали Path Guide, будут полностью описаны.
 |
|
Оптимальный
маршрут из точки А в точку Б? Через интернет? Почему
бы и нет...
|
|
Этот программный модуль
может быть поставлен нами как отдельное решение -- в силу
общности задачи он нужен практически всем. Необходимая ремарка: модуль вряд
ли смог бы родиться без тесного взаимодействия с Центром новых информационных
технологий Калининградского государственного университета (http://www.cnit.albertina.ru/; E-mail: support@cnit.albertina.ru),
который и оказывает по нему техническую поддержку нашим клиентам.
2. «Задача Сусанина», или
Чертик в табакерке.
В предыдущем случае мы добавляли
новую функциональность к стандартному набору функций Autodesk MapGuide R.5.0.
А если задача обратна, если у вас уже есть некое программное приложение,
которое хочется обогатить геоинформационными возможностями? Да и стандартный
web-интерфейс кажется каким-то уж слишком простым и банальным. Если всё
так, нужно учиться встраивать Autodesk MapGuide R.5.0 в свои приложения.
В нашем случае использовался собственный интерфейс, позволяющий выбрать
из справочника нужную улицу и найти ее, нажав на кнопку «Показать». При
этом Autodesk MapGuide Viewer, встроенный в нашу задачу как компонент,
автоматически позиционируется на выбранной улице и подсвечивает ее. За
время, необходимое для «зумирования», в левой части экрана отфильтровываются
из общей базы данных все строения, относящиеся к выбранной улице. Укажите
на интересующий вас дом, нажмите правую кнопку, выберите пункт «Показать на
карте» -- и картина вам предельно ясна. На этот информационный остов
нанизываются любые дополнительные ресурсы; в нашем случае по запросу мэрии
была добавлена связь с базой данных жильцов. По той же правой кнопке можно
включить дополнительную закладку и ответить на с детства знакомый
вопрос: «Кто в теремочке живет?».
Просто? Да. Эффективно?
Еще бы. Осталось только приобрести необходимый опыт в программировании
для Autodesk MapGuide. Или пригласить тех, кто этот опыт уже имеет...
 |
|
Так
выглядит реализованное нами решение «Задачи Сусанина»
|
|
3. «Закрома Родины», или
Как снабдить нашу ГИС достоверными данными.
Представьте себе, что все
хорошо. И деньги на ГИС выделены, и оцифровка жизненно важных слоев
идет не абы как, а под вашим мудрым руководством. И тут выявляется
то, о чем вы догадывались, но в чем боялись себе признаться. Информация
на картографических планшетах из городского архива -- не самая
полная и достоверная! И после оцифровки, даже самой правильной и изящной,
надо погружаться в технические архивы держателей коммуникаций («Водоканал»,
«Теплосеть» и т. д.), чтобы недостающую информацию добыть. А если
этого не сделать, ценность ГИС становится такой иллюзорной, что вам и не
ответить потом, для чего были потрачены деньги на ГИС, о которой вы так
долго и с выражением рассказывали. Создать летучую бригаду и барражировать
над техническими архивами города -- долгая и маловероятная
перспектива. Вот привлечь к этому делу производственно-технические отделы
соответствующих организаций -- на первый взгляд, самая правильная
мысль. Ведь, в конечном счете, они заинтересованы в такой инвентаризации
с ГИСовским уклоном. Но как включить в этот процесс людей, пока весьма
далеких от информатизации вообще, не знающих особенностей геоинформационных
систем да, может, и слова такого еще не слышавших?
На помощь приходит специально
разработанная нами серия программных продуктов, жестко специализированных под
конкретные службы. Понятный интерфейс, максимальное использование справочников,
при котором информация не «набивается» вручную, а выбирается из возможных
значений. И... связь с соответствующим графическим слоем (водяные и канализационные
трубы, газовые коммуникации и т.д.). Вся графическая информация показывается
в режиме только «для чтения», испортить ничего нельзя. При этом объекты
подлежащего заполнению слоя автоматически меняют цвет по мере заполнения соответствующих
им табличных данных. И беглого взгляда достаточно, чтобы понять, что вот
эта паутина ЧЕРНЫХ труб уже обработана, а вот те несколько КРАСНЫХ труб
явно были пропущены и к ним стоит вернуться. Все это уже реализовано, и вряд
ли я удивлю вас, если скажу, что и здесь в качестве встроенного компонента
используется Autodesk MapGuide Viewer.
Итак, попытка краткого резюме.
Autodesk MapGuide -- конечно, не панацея от всех ГИСовских проблем,
но это очень важный и нужный компонент для построения эффективной и производительной
ГИС (наряду с «хранилищами» данных и инструментальными ГИС). Это очень
современный инструмент, как по технологии использования, так и по внешнему
виду; и что важно -- легко наращиваемый, масштабируемый и встраиваемый
в ваши приложения.