Научная статья на тему 'РАЗРАБОТКА УНИВЕРСАЛЬНОЙ ГЕОИНФОРМАЦИОННОЙ СИСТЕМЫ НА ОСНОВЕ ТЕХНОЛОГИИ ADOBE FLEX'

РАЗРАБОТКА УНИВЕРСАЛЬНОЙ ГЕОИНФОРМАЦИОННОЙ СИСТЕМЫ НА ОСНОВЕ ТЕХНОЛОГИИ ADOBE FLEX Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
7
3
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕОИНФОРМАЦИОННАЯ СИСТЕМА / БРАУЗЕРНАЯ ГИС / ГЕОПЛАТФОРМА / ADOBE FLEX / FLASH / RIA / RICH INTERNET APPLICATIONS / ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ / ГЕОПЛЕЕР / РЕВОЛЬВЕРНОЕ МЕНЮ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Чеканов Сергей Сергеевич

Рассмотрена родственная Flash технология создания насыщенных Интернет-приложений (Rich Internet Applications, RIA) Adobe Flex в качестве средства разработки геоинформационных систем (ГИС). Аргументирована потребность в создании новой универсальной ГИС. Описана архитектура клиент-серверной браузерной ГИС автора. Разобраны вопросы организации представления векторной информации, повышения информативности и читабельности геоданных. Приведены рекомендации к построению интерфейса пользователя, в числе примеров представлен геоплеер и револьверное меню. В ходе исследования и разработки технология Flex показала себя как оптимальная при создании геоинформационных систем с современным уровнем требований.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Чеканов Сергей Сергеевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «РАЗРАБОТКА УНИВЕРСАЛЬНОЙ ГЕОИНФОРМАЦИОННОЙ СИСТЕМЫ НА ОСНОВЕ ТЕХНОЛОГИИ ADOBE FLEX»

Электронный журнал «Труды МАИ». Выпуск № 38

www.mai.ru/science/trudy/

УДК 004.4:528

Разработка универсальной геоинформационной системы на

основе технологии Adobe Flex

С. С. Чеканов

Аннотация

Рассмотрена родственная Flash технология создания насыщенных Интернет-приложений (Rich Internet Applications, RIA) Adobe Flex в качестве средства разработки геоинформационных систем (ГИС). Аргументирована потребность в создании новой универсальной ГИС. Описана архитектура клиент-серверной браузерной ГИС автора. Разобраны вопросы организации представления векторной информации, повышения информативности и читабельности геоданных. Приведены рекомендации к построению интерфейса пользователя, в числе примеров представлен геоплеер и револьверное меню. В ходе исследования и разработки технология Flex показала себя как оптимальная при создании геоинформационных систем с современным уровнем требований.

Ключевые слова

Геоинформационная система; браузерная гис; геоплатформа; adobe flex; flash; ria; rich internet applications; интерфейс пользователя; геоплеер; револьверное меню

Введение

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

настроек интерфейса пользователя и географической информации, гибкой системы описания векторных объектов, эргономичного инструментария, механизмов работы со временем и анимации движения объектов, обеспечение высокой скорости разработки прикладных геоинформационных решений на основе универсальных ГИС и т.д. Обеспечить решение подобных задач позволяет технология разработки "насыщенных" Интернет-приложений (Rich Internet Applications, RIA) Adobe Flex. На основе Flex автор разработал и продолжает развивать универсальную браузерную геоинформационную систему (Рис. 1).

Рис. 1 - Браузерная ГИС на основе Adobe Flex

Общая логика системы подразумевает четыре класса геопространственной информации: сплошное покрытие Земли фотоматериалами, векторная информация (организованная по принципу слоёв и рабочих наборов), объекты обстановки (векторные объекты, география и семантика которых привязывается ко времени), координатные сетки и разграфка топокарт. Следуя за тенденциями географических сервисов глобальной сети (в первую очередь сервисов Google), отображение информации производится в цилиндрической проекции Меркатора в жестко заданном перечне масштабов.

Клиент-серверная архитектура ГИС на основе Flex

Приложение и вся географическая, семантическая, файловая информация по объектам хранится на сервере. Все, что необходимо для обеспечения работы приложения на клиентском рабочем месте - операционная система (Windows, Linux, Macintosh, Solaris), браузер и Flash Player в качества плагина к браузеру. В качестве сервера целесообразен выбор Linux (openSuse 11), серверной СУБД - PostgreSQL. База данных используется как средство хранения семантической и географической информации по объектам, а также информационной структуры. Для обеспечения возможности работы с географией в рамках СУБД PostgreSQL должна быть установлена библиотека PostGIS (http://postgis.refractions.net/).

Аэрокосмические фотоматериалы, из которых составляются сплошные покрытия Земли, хранятся в виде наборов файлов размером 256 x 256, собираясь в единое целое в клиентском приложении.

Клиентское Flex-приложение вызывается в браузере по протоколу HTTP. Для обеспечения информационного взаимодействия клиента и сервера удобно использовать серверные скриптовые механизмы построчной интерпретации (PHP, Ruby, Python) с последующей пересылкой информации Flex-приложению, например, в текстовом формате XML. Однако, опыт показал, что такое решение является малопроизводительным при загрузке векторной информации повышенной детальности - оптимальным является использование продукта Adobe BlazeDS, который обеспечивает мост (соответствие типов данных) между клиентским Flex-приложением и Java-сервисом (классом) в рамках сервера Java-приложений, что позволит осуществлять пересылку географической информации в форме массива байт.

Сервисный принцип организации ГИС

В рамках одного Flex/Flash-приложения возможна реализация загрузки другого (например, через компонент Image), отображения с сохранением интерактивности и организацией двустронней связи. Как ни странно, эта возможность документируется не слишком активно, а ведь с ее помощью можно строить сложнейшие программные комплексы в виде цепочки сервисов. Сервисная организация приносит возможность многократного использования кода, ликвидирует дублирование функциональности, существенно увеличивает скорость разработки прикладных решений. В качестве сервиса может выступать любое Flex/Flash-приложение на основе ActionScript 3. Целесообразно оформление в

качестве сервисов механизма отображения разнородной (и в первую очередь семантической) информации по объекту, галерей изображений и видеофайлов, и в первую очередь ядра универсальной ГИС - с возможностью вызова из специализированных ГИС-приложений. Причем эти приложения могут быть как браузерными на основе Flex/Flash, так и кросс-платформенными оконными приложениями на основе AIR (Adobe Integrated Runtime). Подробную информацию о технологии AIR можно найти в книге Джои Лотта [1].

Организация представления точечных объектов и подписей

Описание и отображение точечных условных знаков реализовано из соображений максимальной гибкости системы. Точечный объект может быть представлен:

1) знаком шрифта - для этого шрифт внедряется в SWF-файлы;

2) векторным объектом - требует создания собственной системы описания и отображения, например, на основе набора вызовов функций отрисовки примитивов;

3) изображением (PNG, JPEG) - при этом проблема появления дефектов изображения при, например, его наклоне на некоторый угол, решается посредством использования сглаживания (smoothing - свойство Flash-класса Bitmap);

4) файлом Flash-анимации (SWF) - такой подход позволяет вводить качественно новые типы точечных условных знаков - анимированные управляемые Flash-приложения: мигающие лампочки, расходящиеся волны и т.д.

В рамках технологии Flash/Flex отсутствует возможность вывода текста напрямую ("отрисовки"). Можно выделить два альтернативных сценария организации работы с подписями. Первый предполагает создание экземляра текстового компонента для каждого подписываемого объекта карты, с последующим помещением его на канву карты в качестве дочернего объекта (эксперимент показал оптимальность в случае, если требуется наклон подписей на некоторый угол). Второй - создание единственного экземляра текстового компонента с последующим циклическим изменением текста подписи и виртуальным снятием скриншота с помощью класса ImageSnapshot, сохранение его в форме объекта класса BitmapData и отрисовкой на канве карты в качестве заливки прямоугольной области (метод более производительный в остальных случаях).

Дизайн интерфейса пользователя

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

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

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

Повышение читабельности географической информации достигается путем обеспечения возможности настройки уровня прозрачности отображаемой информации, цветовой коррекции растрового покрытия (яркость, контрастность, насыщенность, монохромный режим и т.д.), цвета координатной сетки и даже цветовой схемы приложения -кнопок, прозрачных панелей, шрифтов и т.д. Е^Ь-платформа позволяет ввести и качественно новую функциональность - подсветки объектов с помощью Е^Ь-фильтров с возможностью задания настроек: фильтра падающей тени, фильтра размытия, фильтра свечения и т.д. (Рис. 3-4). Помимо базовых фильтров, с помощью фильтра свертки можно создавать такие эффекты, как выдавливание, выделение краев, повышение резкости и ряд других [2].

Рис. 2 - Револьверное меню

Повышение информативности и читабельности информации

Рис. 3 - Пример стиля отображения по Рис. 4 - Цветовая коррекция покрытия и

умолчанию подсветка объектов фильтром

Геоплеер: анимация движения объектов

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

Рис. 5 - Инструменты геоплеера

Заключение

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

Дополнительную информацию о представленном проекте вы можете найти на сайте www.geoplatform.ru.

Библиографический список

[1] Лотт Дж., Ротондо К., Ан С., Аткинс Э. Adobe AIR. Практическое руководство по среде для настольных приложений Flash и Flex. СПб.: Символ-Плюс, 2009. 352 с.

[2] Лотт Дж., Шалл Д., Питерс К. ActionScript 3.0. Сборник рецептов. СПб.: Символ-Плюс, 2007. 608 с.

Сведения об авторах

Чеканов Сергей Сергеевич, начальник сектора ОАО "Научно-исследовательский институт точных приборов",

Телефон: 8 (905) 719-90-45,

e-mail: darkcells@gmail.com, персональное портфолио: www.darkclients.com.

i Надоели баннеры? Вы всегда можете отключить рекламу.