Знайомство з проектом openstreetmap - цікава веб-картографія

У цій замітці я хочу познайомити Вас з картографічному сервісом OpenStreetMap і прикладами його використання на сайтах.

Знайомство з проектом openstreetmap - цікава веб-картографія

Це вільний проект по спільному розвитку загальнодоступних карт і схем міст, вулиць, доріг за допомогою ручного або автоматичного введення даних, а також отримання даних з портативних GPS-приймачів.

Над створенням карти працює спільнота користувачів з різних населених пунктів світу, кожен з яких додає невеликий шматочок інформації.

Дані створювані в рамках OpenStreetMap поширюються за ліцензією Creative Commons Attribution-ShareAlike 2.0. що має на увазі вільне поширення, результати будь-яких змін повинні публікуватися під тією ж ліцензією.

Як відбувається робота з даними:

Дані з OpenStreetMap можна вільно використовувати на своїх сайтах.

1. Використовуємо API Google Maps v3

Знайомство з проектом openstreetmap - цікава веб-картографія

Поясню даний код.

На початку ми задаємо властивості карти і инициализируем її.

Після цього створюємо новий тип карти osm з набором властивостей openStreet.

Додаємо створений тип до нашої карті

map.mapTypes.set ( 'osm', openStreet);
map.setMapTypeId ( 'osm');

Крім цього додаємо наявні типи карт Google Maps:

  • ROADMAP стандартна карта Google Maps в форматі 2D, схеми доріг та назви населених пунктів;
  • SATELLITE карта, складена зі знімків з космосу;
  • HYBRID відображає комбінацію перших двох типів карт - знімки з космосу і схеми доріг, назви міст;
  • TERRAIN відображає на карті рельєф місцевості (ріки, гори).

2. Використовуємо OpenLayers

Знайомство з проектом openstreetmap - цікава веб-картографія

Визначаємо карту і контейнер для неї basicMap.

Підключаємо шар з картою OpenStreetMap:

var mapnik = new OpenLayers.Layer.OSM ();
map.addLayer (mapnik);

Задаємо центр карти і рівень масштабу.

OpenLayers має можливість перетворення картографічних проекцій.

В даному прикладі використовується в OpenStreetMap проекція WGS 1984 перетвориться в проекцію, яка використовується в Google Maps - Меркатора.

Більше дізнатися про роботу з OpenLayers можна тут:

Навігація по публікаціям