пятница, 27 февраля 2009 г.

KML. Добавляем веб камеры.

Недавно на хабре было обсуждение веб камер http://habrahabr.ru/blogs/i_am_clever/52572/ , при этом разговор несколько раз коснулся методов применения такому материалу. Вспомнил свои старые эксперименты с веб камерами и решил опубликовать этот материал здесь.
Мое отношение - веб камеры с координатами были бы прекрасным сервисом, востребованным при решении многих задач, достойная поддержка для множества систем реального времени. Пример подборки - http://villagegis.com/Google.html - это создавалось в том числе для департамента транспорта.
Пока что не обнаружил у нас хорошей социальной сети по типу http://www.weatherbonk.com/weather/webcams.jsp - по моему неплохая тема для стартапа, или одного из его компонентов. Если кто нибудь сможет добавить к поиску камер определение места по ip, адресу и тп - было бы интересное начальное приближение.

Один из удобных клиентов для работы с веб камерами - Google Earth.

image

Мы можем включать изображение как:
Screenoverlay - наиболее простое решение, удобное для просмотра с заданным интервалом обновления
Photooverlay - у меня на экране изображение начинает мигать, пока выглядит не очень хорошо
Groundoverlay - может оказаться интересным, если мы сможем создавать сервисы трансформации изображений
Image in balloon - решение было бы наилучшим, если будет реализована возможность обновления изображения. В GE5 добавлена поддержка iframe и js, возможно теперь это можно реализовать средствами KML.
На хабре видел интересное решение на базе GMaps для Красногорска http://habrahabr.ru/blogs/webdev/52190/ правда в большей степени публикация посвящена настройке камер
Пример KML - Screenoverlay Пример довольно старый, из четырех камер сохранились ссылки только для двух.
Пример - мониторинг вулканов (Аляска)
image
KML - Screenoverlay Делал этот слой в 2006 году по материалам Alaska Volcano Observatory http://www.avo.alaska.edu/ Восстанавливал по описанию координаты и цеплялся на линк к веб камере.

Пример KML - Photooverlay
image

Как это реализуется средствами KML?
Рассмотрим это на примере Screenoverlay с использованием техники прямого редактирования кода KML.

Типичный код вставки выглядит так:
Copy Source | Copy HTML
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
<ScreenOverlay>
<name>Perm Webcam 2</name>
<Snippet maxLines="0"></Snippet>
<LookAt>
<longitude>56.22312242824621</longitude>
<latitude>58.01396606265071</latitude>
<altitude>0</altitude>
<range>107.638554354073</range>
<tilt>55.99393586459927</tilt>
<heading>2.145894923887044</heading>
</LookAt>
<Icon>
<href>http://webcam.perm.ru/cameras/2/jpeg/1159130566796_320x240.jpg</href>
<refreshMode>onInterval</refreshMode>
</Icon>
<overlayXY x="1" y="1" xunits="fraction" yunits="fraction"/>
<screenXY x="1" y="1" xunits="fraction" yunits="fraction"/>
<rotationXY x="0" y="0" xunits="fraction" yunits="fraction"/>
<size x="0" y="0" xunits="fraction" yunits="fraction"/>
<refreshInterval>1</refreshInterval>
</ScreenOverlay>
</kml>

Мы можем скопировать код и вставить его в GE - MyPlaces.

Время обновления определяется строкой
<refreshInterval>1</refreshInterval>

Мы можем управлять размерами и положением изображения (см официальную документацию).

Надеюсь, что этот материал поможет находить применение многочисленным веб камерам, объединяя их в тематические слои, в частности, в KML формате.

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