УДК 004.921
WEB-ПРИЛОЖЕНИE ДЛЯ SD-ВИЗУАЛИЗАЦИИ В ИССЛЕДОВАНИЯХ И ОБОСНОВАНИИ РЕШЕНИЙ В ЭНЕРГЕТИКЕ
Людмила Васильевна Массель, д-р техн. наук, гл. науч. сотр., зав. лабораторией
E-mail: [email protected] Роман Андреевич Иванов, канд. техн. наук, науч. сотр.
E-mail: [email protected] Андрей Александрович Чемезов, аспирант E-mail: [email protected] ФГБУНИнститут систем энергетики им. Л.А. Мелентьева СО РАН
http://www.sei.irk.ru
Статья посвящена вопросам разработки инструментальных средств 3D-визуализации объектов процессов и величин, являющихся результатами энергетических исследований, в виде web-приложения. Для визуализации используется новый подход к работе с геопространственными данными, получившим название ситуационная осведомленность, или неогеография. Возможности web-приложения для 3D-визуализации иллюстрируются на примере двух конкретных энергетических задач.
Ключевые слова: исследования систем энергетики, situational awareness, ситуационная осведомленность, неогеография, геосервисы, web-приложение.
Работа выполнена при частичной финансовой поддержке грантов РФФИ № 14-07-00116, № 12-07-00359, № 13-07-00140, № 13-07-00422.
Введение
Развитие информационных технологий, в частности, средств для работы с геопространственной информацией (геосервисов), делает очевидной необходимость повышения уровня интеллектуализации инструментальных средств визуализации результатов исследований в энергетике, а также создания программного обеспечения, отвечающего требованиям современных ИТ, которое можно было бы легко модифицировать и адаптировать к изменяющимся условиям исследований. Появление нового подхода к визуализации разнородной информации [1] может вывести системные исследования в энергетике на новый уровень восприятия информации [2]. Для поддержки энергетических исследований были разработаны методический подход к 3Б-визуализации и специальное инструментальное средство - геокомпонент, который обеспечивает формирование данных для загрузки в геосервис [3]. Геокомпонент был разработан в виде локального приложения и выполнял следующие функции:
- формирование геопространственных данных;
- моделирование структуры данных;
- формирование кш1-файла из результатов исследований.
Исходные данные либо заполнялись вручную, либо извлекались из файлов. Результатом работы являлся кт1-файл, готовый для загрузки в геосервис. Были разработаны и апробированы специальные модули геокомпонента для решения трех классов энергетических задач.
Однако из-за того, что геокомпонент представлял собой локальное приложение, существововало несколько ограничений, обусловленных технологией разработки. Например, следующие:
- отсутствие динамической визуализации. Требовалось загружать сформированный кт1-файл в геосервис, который нужно было
открыть в другом окне;
- задание и получение координат объектов было возможно только вручную.
Учитывая сформулированные ограничения, было предложено разработать геокомпонент в виде web-сервиса. Это дает определенные преимущества и позволяет встроить в web-сервис плагин Google Earth (Планета Земля) [4] для упрощения процесса формирования геопространственной информации и динамического отображения изменений, проводимых с kml-файлом. Основной задачей web-сервиса по-прежнему будет являться формирование kml-файла, но загрузка его во встроенный плагин будет выполняться «прозрачно» для пользователя. Иначе говоря, появляется возможность отображения не только локальных объектов, а также событий и процессов, изменяющихся в пространстве и во времени. Также появляется доступ к дополнительным сервисам Google Earth, например Google Elevations для работы с данными дистанционного зондирования Земли или Google ^arts, для работы с графиками и диаграммами.
Геокомпонент был разработан как научно-исследовательский прототип на языке Java, поэтому было предложено отра- „
X
Исходные данные
Л%
-Ви зуал и з ац ия
Java Applet
Модуль формирования KML-структуры
JavaScript
Модуль редактирования геоданных
1
Google Earth plugin
Модуль визуализации данных
ботать взаимодействия с API и плагином Google Earth, разработав Java-апплет. Java-апплет - прикладная программа, чаще всего написанная на языке программирования Java в форме байт-кода. Апплеты используются для предоставления интерактивных возможностей веб-приложений. Код апплета загружается с веб-сервера, и браузер либо вставляет апплет в вебстраницу, либо открывает новое ОКНО Рисунок 1 - Архитектура web-приложения с собственным пользовательским интерфейсом апплета [5].
Архитектура разрабатываемого web-приложения представлена на Рисунок 1. Как и архитектура авторского базового Геокомпонента, она состоит из трех основных модулей, отвечающих за моделирование структуры, редактирование геоданных и сборку kml-файла. Предложенная архитектура позволяет получить доступ к плагину Google Earth, а также обеспечивает взаимодействие с различными дополнительными сервисами Google.
Google Services
Google Elevation Google Charts
г. I Справка |
ЕШ
□
Lm
3
Моделирование структуры
[Имя Над о&ь-жта 1
Г Параметр 1 з да-вние
P Параметр 2
^Оп уса мне объекта, î t--
tlapaw rphi геометр ии о5ъв(та
■ Имя Над о&ь-жта 1
¡.Параметр 1 з гачение
Г Парам етр 2
|ЬорД№1В1Ы
[долг ore I широта
Е
Параметры объекта
KML-код создаваемого файла
■Saofls Earth jjLein
Плагин Google Earth
Дополнительное поле
Рисунок 2 - Эскиз интерфейса web-приложения
Эскиз интерфейса web-приложения представлен на Рисунок 2. Большую часть глав-
главная папка
главная папка
■ □ * Vwti4>
ного окна занимает встроенный плагин Google Earth, для обеспечения наглядной визуализации были учтены достоинства геокомпонента. В левой части главного экрана размещено окно моделирования структуры kml-файла, которое совмещено с добавлением объектов. Средняя часть главного окна отображает параметры выбранного объекта, такие как имя объекта, описание, координаты (широта, долгота, высота), настройки отображения (видимость, привязка к рельефу и т.д.). Нижняя часть главного окна отведена под kml-код создаваемого файла и дополнительное поле, например для отображения профиля рельефа или различных графиков.
Разработка web-приложения
При разработке web-приложения было уделено внимание трем основным модулям, обозначенным в архитектуре (Рисунок 1).
Рисунок 3 - Кнопки добавления объектов
Моделирование структуры кт1-файла
При анализе структуры различных KML можно разбить файл. Каждый блок выполняет
Установить координаты выделенного объекта равным координатам мыши
Рисунок 4 - Алгоритм перемещения объектов
-файлов были выявлены блоки, на которые свою функцию. Соответственно, появляется возможность моделировать структуру ^^файла для решаемой задачи, а не создавать ^^файл для каждого отображаемого объекта. Необходимость структурирования объектов ^^файлов объясняется спецификой энергетических исследований. Одним из основных подходов к стукту-рированию является разбиение страны на федеральные округа, а каждого округа на субъекты. Это позволяет посмотреть как общую картину исследования для всей страны, состояние объектов исследования в конкретном федеральном округе и результаты исследований в конкретном субъекте. Для некоторых задач необходимо дальнейшее деление субъектов на районы, районов на города, городов на энергетические объекты [6]. Это обеспечивает возможность генерализации информации в зависимости от высоты камеры в геосервисе для наилучшего отображения. Моделирование структуры ^^файла разбито на две основные части: добавление новых объектов и перемещение созданных объектов.
Для добавления объектов было принято решение отображать кнопки непосредственно в панели рисования структуры. Каждый каталог имеет кнопку добавления объектов, отображаемую после списка содер-
жащихся в нем объектов. При нажатии на кнопку отображается панель добавления объектов (Рисунок 3).
В результате нажатия на кнопки можно получить следующие типы объектов: метка, линия, многоугольник, 3Б-модель. Также существует специальная кнопка для создания каталога, для формирования различных структур объектов в kml-файле. В дальнейшем планируется добавить возможность загрузки типовой структуры, например административно-территориального деления всей страны, федерального округа, субъекта или района.
Для изменения положения объектов в структуре предложено реализовать метод Drag&Drop. Для этого необходимо, удерживать объект правой кнопкой мыши, переместить его в нужный каталог или место в каталоге. При перемещении объекта структура будет автоматически меняться в зависимости от положения объекта. Алгоритм перемещения объектов выглядит следующим образом (Рисунок 4).
Кроме того, объект можно поместить в свободное место, использующееся как буфер. Каждый каталог справа от имени имеет кнопку сворачивания содержимого. Это необходимо для упрощения работы со структурой создаваемого файла. Пример перемещения объектов в окне моделирования структуры представлен на Рисунок 5.
Редактирование данных
Каждый тип объектов kml-геометрии имеет набор параметров как обязательных для всех объектов, так и специальных параметров, специфичных для конкретного типа объектов. Подробнее типы объектов и наборы параметров описаны в [2]. При добавлении или выборе определенного объекта в поле параметров отображаются доступные характеристики.
Редактирование координат
Существуют два варианта задания координат объекта: ручной - ввод данных с помощью клавиатуры и интерактивный - добавление и изменение данных с использованием Google Earth plugin. Интерактивное задание координат объекта является наиболее удобным способом. Он позволяет получать значения долготы, широты и высоты по выделенному узлу, копировать, заменять или удалять выделенный узел, а так же добавлять новые узлы до или после выделенного (Рисунок 6 - Контекстное меню редактирования координат).
широта долгота высота
52.199 52.201 104.3011 570.413 ШЩ 577*95
52.202 104,29& 579 149
52.203 104.294 571.585
52206
добавить до добавить после
Котировать
вставить до
1
заменить
удалить
Квордпшы
■ивота fWtvta «ысотэ
52.20! 104.331 456 025
52.202 104.33: 527442
52.20 IW.J: 519,555
5220 104.326 526409
52 20 104.318 546 «вит® |
52.20 104.31«
5219 1013«
52.19 104.301
нио-нть |
широта ! долгота I высот
добавить до добавить после Копировать вставить до вставить после
удалить
_ _ _ _ Рисунок 6 - Контекстное меню редактирования
Рисунок 5 - Перемещение объектов ^ 1 1
координат
Сборка и визуализация KML
Каждый элемент структуры и параметров отвечает за определённый участок кода kml-документа. По смоделированной структуре и заданным параметрам объектов формируется kml-файл добавляется заголовок и строка декларации имен. Далее собранный файл передается в Google Earth plugin, где и происходит визуализация. Пример сборки заданной структуры и сформированный kml-код отображены на рисунке 8.
В рамках апробации созданного инструментария была поставлена задача разработать специальные модули web-приложения для решения двух классов энергетических задач:
1) получение профилей рельефов и участков с различными горно-геологическими условиями строительства в задаче обоснования маршрутов газопроводов;
2) визуализация количественных и качественных оценок энергетической безопасности;
3) применение инструментария для получения профилей рельефов в задаче обоснования маршрутов газопроводов. Основной целью являлось получение дополнительных данных для экономического обоснования маршрутов газопроводов. Экономическое обоснование выбора вариантов трассы представляет собой расчет стоимости прокладки газопровода на основе профиля рельефа и других характеристик, что и позволяют возможности геосервиса Google Earth.
Для получения профиля рельефа первоначально нужно сформировать массив кортежей геопространственных данных, затем отправить полученный массив в сервис Google Earth Elevation (Высотных данных).
Рисунок 7 - Алгоритм обработки событий мыши на трехмерной модели Земли
Рисунок 8 - Результат сборки созданной структуры в KML
API высотных данных Google предоставляет простой интерфейс, позволяющий запрашивать данные о высотах в разных точках земной поверхности. Кроме того, можно запрашивать высотные данные для выборки точек вдоль пути, что позволяет вычислять изменения высоты на маршруте. API высотных данных предоставляет данные о высотах всех точек на земной поверхности, включая глубины океана (в этом случае возвращаются отрицательные значения). Если у Google нет точных высотных данных для интересующей нас точки, служба использует интерполяцию и возвращает усредненное значение по четырем ближайшим точкам [7]. Полученный массив с заполненными высотами передается из сервиса Высотных данных и отображается в виде графика, используя сервис Google Chart. Результат работы представлен на Рисунок 9.
Файл ииструмшы Справка
? Гллцмли nuritii V, профиль рельефа
широте ДСЯГС'ТЭ высста
ягэзз 1Л4.31Й «40 Q?1 -
52.326 1М.Й15 630.109
5? 349 «?!) 13 S
52.314 1 »3,751 715.420
•¿¿2Q\> 1W.«H ть 9U
52,072 103,557 850,392
!д1 «-(В IW.bÄi !П2П
4LlneS*lnp «Иасегпаир-Erfttal > «®oeum«it>
2.WJQ г.адо ; 1.И0
НЁМ
Рисунок 9 - Интерфейс web-приложения, профили рельефа
Визуализация количественных и качественных оценок энергетической безопасности
В Институте систем энергетики им. Л. А. Мелентьева СО РАН была поставлена задача 3Б-визуализации контрольных показателей мониторинга энергетической безопасности субъектов РФ. Оценку основных показателей состояния энергетики как обобщенных, так и частных, можно осуществлять на основе использования системы индикаторов, т.е. системы показателей, характеризующих уровень, состав и глубину угроз ЭБ.
Флаги
Имя
Видимость
Открытие
Тюменская область
Значение 1.0
Цвет
Радиус (км) 25.0
Количество узпов 10
Цвет контура
Координаты
широта долгота высота
57,343 68,286 115,212
| Гпа»ная Энврг
б »властность
ВМДИМХЛЬ 1.0
Ft VHHII4H а:С(гЖП-
Г кикчрм 10
Радиус («гм| Kcrv Video yjIIDB 250
КЭОРЛИНДГЫ
кмрсна | донса «ь-сс'13
50.99319010928595.55 55722777753349.87500.0 </Ы>0Г<*П«95> <Л_1ПвэгЯ1пд> *JoulerBoundaryls»
*FOlyOOn> ■fPlaMmanc» </Fo(eet> <JFoMer> ■«(Document*
Рисунок 10 - Панель ре- Рисунок 11 - Построение индикаторов энергетической безопасности
дактирования данных в web-приложении
Было предложено для каждого показателя энергетической безопасности отображать трехмерный цилиндр, высота и цвет которого соответствуют значению показателя ЭБ.
Для каждого цилиндра задаются высота, радиус, цвет заливки, цвет контурных линий, а также описание.
Панель редактирования данных и результат работы представлены на рисунках 10-11.
Заключение
В статье рассмотрена возможность применения нового подхода к 3Б-визуализации информации в энергетических исследованиях, реализованного в виде web-приложения. Разработанное web-приложение имеет следующие преимущества - динамическая визуализация, моделирование структуры файла и формирование геопространственных данных. Выполненная реализация позволяет экспертам предметной области (энергетика) получить новое качество отображения информации. Рассмотрено применение web-приложения для решения двух классов энергетических задач. Полученные результаты используются экспертами-энергетиками в дальнейших исследованиях.
Литература
1. Ерёмченко Е.Н., Клименко С. В. Новые методы визуализации пространственно-временной информации и принцип Situational Awareness. Труды конференции MEDIAS 2009. Лимасол, республика Кипр. С. 105-111.
2. Массель Л.В., Иванов Р.А. 3Б-геомоделирование в исследованиях энергетики: примеры применения и перспективы // Вестник ИРГТУ. 2011. Вып. 4(51). C. 6-11.
3. Иванов Р.А. Методика 3Б-визуализации для поддержки принятия решений в энергетических исследованиях // Современные технологии. Системный анализ. Моделирование. 2013. № 1(37). С. 116-121.
4. Руководство разработчика API Google Планета Земля. URL: https://developers.google.com/earth/documentation/?Hl=ru
5. The Java™ Tutorials. Lesson: Java Applets URL: http://docs.oracle.eom/j avase/tutorial/deployment/applet/
6. Массель Л.В., Иванов Р.А. Применение 3Б-моделирования для визуализации геопространственной информации в исследованиях и поддержке принятия решений в энергетике. Труды международной научной конференции Medias'2012. М.: Институт физико-технической информатики, 2012. С. 79-85.
7. Веб-службы API Google Карт. API высотных данных Google. URL: https://developers.google.com/maps/documentation/elevation/?Hl=ru
web-application for 3d-visualization in research and validation of energy solutions
Lyudmila Vasilyevna Massel, Doctor of technical science, Chief Scientific Officer, Head of laboratory, Melentiev Energy Systems Institute of SB RAS
Roman Andreevich Ivanov, Candidate of technical science, Researcher, Melentiev Energy Systems Institute of SB RAS
Andrey Alexandrovich Chemezov, postgraduate student, Melentiev Energy Systems Institute of SB RAS
Article is devoted to the development of web-application for 3D-visualization of objects, processes and values which are the result of energy research. The new approach to work with geospatial data which has been called Situational awareness or Neogeography used for 3D-visualization. The possibility of web-applications for 3D-visualization is illustrated by two specific energy problems.
Keywords: energy systems research, situational awareness, neogeography, geoservices, web-application.