Гарант Комп.3dn.ru

IT, Open Source, Freeware, OSHW

Четверг, 16.05.2024, 22:38
Главная » Статьи » Обзор Software » Web-картография

Web-картография

И так, что такое web-картография в широком понимании. Я рассмотрю сервер на базе тайлов.

Web – картография – интернет сервис для предоставления  картографической информации в открытом доступе посредством интернет.

Известные картографические сервисы на поисковиках – Google, Yahoo, Bing, Yandex, Mail. Главное преимущество – связь картографии и контента широкого спектра.

yandex-maps

yandex-maps

Google maps

Google maps

yahoo maps

yahoo maps

Bing Maps

Bing Maps

maps mail

maps mail

 

Web-картография позволяет большому количеству людей найти адрес организации и контактные данные. Также как дополнительную функцию, это различные сведения об организации: время работы, штат сотрудников, фотоснимки и т.д.

 

В последнее время все активнее среди населения используются сервис «Пробки», где автовладельцы могут узнать о состоянии дорог и найти маршрут объезда.

Также существую сервиса на основе web-картографии, которые позволяют маршрут движения на автомобили, пешком или общественном транспорте и время в пути, а также описание маршрута: где повернуть, через сколько и т.д.

Преимущества web-картографии является также совместное использование карт с GPS\ГЛОНАСС навигацией.

 

Таким образом можно отслеживать маршрут движения автопарка компании или муниципального предприятия. Используя дополнительные модули, отслеживать состояния топливных баков, скорости движения, а также управлять двигателем автотранспорта.

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

Рассмотрим программное обеспечение используемое при этом:

Данные из Wikipedia.

Quantum GIS — свободная кроссплатформенная геоинформационная система.

С помощью удобного графического интерфейса можно создавать карты и исследовать пространственные данные.

Quantum GIS

Quantum GIS

Quantum GIS можно легко скачать и установить себе на компьютер для редактирования карт.

 

Quantum GIS

Quantum GIS

Графический интерфейс включает в себя множество полезных инструментов, например:

 

  • перепроецирование «на лету»
  • компоновщик карт
  • панель обзора
  • пространственные закладки
  • определение/выборка объектов
  • редактирование/просмотр/поиск атрибутов
  • подписывание объектов
  • изменение символики векторных и растровых слоев
  • добавление слоя координатной сетки— теперь средствами расширения fTools
  • добавление к макету карты стрелки на север, линейки масштаба и знака авторского права
  • сохранение и загрузка проектов

 

Quantum GIS

Quantum GIS

С помощью Quantum GIS можно экспортировать в Shape-формат для дальнейшего использования, например с тайловым-сервером.

Тайл (от англ. tile — плитка) — растровое изображение формата PNG/JPEG размером 256×256 пикселей. Метод создания больших изображений. Изображение составляется из маленьких фрагментов одинаковых габаритов, как картина из изразцов — отсюда название.

 

Таким образом, Тайловый сервер, это сервер который хранит тайлы (нарезки) карт и в последующем выдает их пользователю.

Таким сервером является TileStream.

 

TileStreamэто высокопроизводительный тайловый сервер с возможностью просмотра файлов формата MBTiles через веб.

 

MBtiles — это спецификация для хранения нарезанных на тайлы карт в СУБД SQLite с возможностью мгновенной отдачи. Подобный формат данных позволяет переносить тысячи, сотни тысяч и даже миллионы тайлов в одном файле. л

 

Требования к серверу:

Клиент TileStream

Проверено: Chrome 6+, Firefox 3+, IE8+

Должно работать под Opera 11

 

TileStream сервер

Проверено: Mac OS X 10.6, Ubuntu 10.10, Gentoo

Проверено: node 0.4.9

Проверено: npm v1.0.3

Как минимум 613МБ ОЗУ

Должно работать на старых версиях и других POSIX-совместимых системах

Для того, чтобы начать пользоваться TileStream, вам необходимо скопировать MBTiles в директорию tiles. На сайте MapBox вы можете найти набор бесплатных тайлов от разработчиков.

 

Каждый набор тайлов можно просмотреть по адресу localhost:8888/map/[filename], где [filename]—имя набора тайлов, без расширения .mbtiles.

 

Чтобы создать свои тайлы, можно воспользоваться открытыми ПО.

 

Инструмент для создания карт с открытым кодом и доступный всем является TileMill.

 

TileMill

TileMill

TileMill — это инструмент для картографов, позволяющий быстро и просто создавать и оформлять карты для веба, используя разные источники данных.

В этой студии существует свой собственны язык аналог CSS. Этим языком является Carto.

Язык Carto:

#kursk_landuse

{

  polygon-opacity:1000; //прозрачность

  polygon-fill: #3bc439; //Цвет полигона

  line-color: #3bc439; //цвет линии

  line-width: 0.5; //толщина линии

  

}

#kursk_water {

 

  line-color: blue;// цвет линии

  line-width: 0.5; //толщина линии

  polygon-fill: #3a75c4 ; //цвет полигона

}

 

 

TileMill поддерживает разные уровни представления. Уровень представления — это предустановленный масштаб отображения карты. Web картографические сервисы предоставляют тайлы размером 256×256 пикселей на нулевом уровне представления и удваивают размеры на каждом последующем уровне. Таким образом,  на нулевом уровне представления, виден весь мир, на шестом уровне — страна средних размеров, на одинадцатом — мегаполис. На шестнадцатом уровне можно увидеть отдельные дома.

 

Как же добавить карту на свой сайт? Для этого можно воспользоваться специализированными JavaScript библиотеками для выгрузки карт.

Напрмер, OpenLayers.

 

OpenLayers — свободная библиотека JavaScript для отображения картографических данных на веб-страницах с API сходным с API Google Maps/Virtual Earth.

 

open Layers

open Layers

Что бы установить карту используя тайлы сервера TileStream необходимо добавить следующий код:

 

<script type=»text/javascript»>

map = new OpenLayers.Map(‘map’, options);

        // Layer definitions

        var layer = new OpenLayers.Layer.TMS(

  «MapBox Layer»,

  [ "http://localhost:8888/" ],

  { ‘layername’: ‘fecity’, ‘type’: ‘png’ }

);

        // Add layers to the map

        map.addLayers([ layer ]);

        // Set the map’s initial center point

        map.setCenter(new OpenLayers.LonLat(0, 0), 1);

      }

</script>

<body onload=»init()»>

    <div id=»map» style=»width: 500px; height: 300px»></div>

  </body>

 

Таким образом, используя вышеприведенные открытое программное обеспечение можно создать свой собственный сервис картографии для своих нужд.

 

Обсудить можно здесь: Интерактивная карта города

Категория: Web-картография | Добавил: garantcomp (10.09.2011) E W
Просмотров: 6964 | Рейтинг: 0.0/0