trolleway A log of everyday life

Рисование маршрутов автобусов в Openstreetmap

В Openstreetmap можно заносить маршруты общественного транспорта. Поскольку данные osm распространяются под открытой лицензией, то потом эти маршруты можно будет бесплатно загружать в свою ГИС, отрендрить, размещать на сайтах и печатать.

При вводе данных важно соблюдать лицензионную частоту. Брать данные можно только из тех источников, которые явно разрешили публиковать данные в Openstreetmap - или же использовать для уточнения свои знания.

В openstreetmap имеются следующие типы объектов: точка, линия, замкнутая линия, и отношение. Отношение - это список ссылок на другие объекты, которое имеет свои теги.

Рисование маршрутов осуществляется в josm. Включите в этом редакторе панель Отношения.

josm_relation_panel Скачайте небольшой кусок карты.

josm_data_download

В списке отношений вы найдёте маршруты общественного транспорта. Вы можете их выделить, и в контекстном меню сказать “Докачать участников”

relation members download

Таким образом докачайте всю трассу нового маршрута.

Часто бывает, что на перекрёстке, где маршрут должен поворачивать, улицы не разрезаны. Тогда их надо разрезать. Проверьте, что этот перекрёсток находится в загруженной области (не заштрихован), выделите узел, и нажмите “Разрезать линию” (P). Как правило, дороги могут быть разрезаны в любом месте без поломок.

Создаём новое отношение. У него обязательно должны быть 4 тега:

  • type=route
  • route=bus/trolleybus/tram
  • ref=25
  • name=Автобус 25: Нагорный бульвар – Красная площадь (от пункта “А” до пункта “Б).
  • from = Нагорный бульвар (я использую этот тег в своём рендере)
  • payment:troika=yes (я использую этот тег в своём рендере осоциаленных маршруток Москвы)

Не забудьте: теги пишутся маленькими буквами. Между пунктами назначения ставится тире, выделенное пробелами.

Идём на конечную А, с зажатым Ctrl кликаем по порядку на все сегменты дорог входящие в маршрут. Их список попадает в правый список в окно, жмём на кнопку, и он попадает в левый. Добавляем, пока не доходим до пункта “Б”. Если в выделение попадутся точки - выкидываем их.

add route members

В левом списке, справа от названий улиц есть столбец с вертикальной линией. Так обозначается непрерывность маршрута. Маршрут должен быть непрерывный, в нём не должно быть дырок. Если в столбце заметите разрыв - найдите крайние сегменты разрыва, и вставьте в отношение нужные сегменты между ними.

Отношение готово. Закрываем его, и создаём другое - для направления от пункта “Б” к пункту “А”. Ставим ему такие же теги, а тег name=Автобус №25: Красная площадь - Нагорный бульвар. Наполняем отношение аналогично предыдущему пункту.

two relations

Создаём отношение, которое объединит оба направления:

  • type=route_master
  • route_master=bus
  • name=Автобус 25

Добавляем в него два отношения: маршрут (Автобус 25: Нагорный бульвар - Красная площадь) и маршрут (Автобус 25: Красная площадь - Нагорный бульвар)

r

На этом всё, данные можно загружать.


map