User:Zverik/Метро 2014

From OpenStreetMap Wiki
Jump to navigation Jump to search

В свете принятия новой схемы общественного транспорта в 2011 году и многочисленных дискуссий на тему, схема рисования метро потребовала обновления. Главное, что изменилось за прошедшее время, — рисовать ветки метро одной линией стало моветоном.

Станции метро

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

Вход и выход

Вход в метро обозначается точкой railway=subway_entrance. Он находится в месте, видном с поверхности, которое обычно обозначают на печатных картах: в центре наземного вестибюля или на входах в этот вестибюль, на спусках в подземный переход, соединённый со станцией метро. Сколько из входов нужно обозначать, если у станции есть и наземный вестибюль, и присоединённый подземный переход с десяткой выходов на поверхность, остаётся на усмотрение маппера.

Поскольку на картах обычно подписываются не подземные станции, а входы в метро, на точку следует повесить теги, характеризующие [одну ближайшую] станцию: name=*, network=*, colour=*. Список значений тегов network и operator для разных городов смотрите ниже. Название в name (здесь и далее) не включает в себя слов «станция», «ст.», «ст.м.» и подобных — только название без кавычек: например, name=Чернышевская. Переводы, как минимум на английский, желательны.

Желательно ставить на входы тег opening_hours=*, если вход относится только к станции метро. Для входов из подземного перехода этот тег можно ставить на barrier=door входа в метро.

Станция

Прежде всего: для подземных станций спуски в метро, станции метро, переходы между ними и все точки по пути тегируются значениями layer=-2 и ниже. Рекомендуются значения не выше -3 для всей инфраструктуры, связанной с метро. Хорошо бы иметь layer у станций равным layer у путей.

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

railway=station
station=subway
name=*
opening_hours=*
ref=<номер станции, если известен>
layer=-N
operator=*
network=*

Обращу внимание, что станция — это не public_transport=station! Не ставьте лишних тегов, которые, кажется, подходят по смыслу: этим вы только запутаете приложения для обработки данных и других мапперов. Однако если вы не нарисовали платформу станции, то на точку нужно поставить дополнительно public_transport=platform.

Эскалаторы и туннели

В простейшем случае, когда у вас нет дополнительной информации, от точки входа к точке станции можно протянуть линию с тегами:

highway=steps
incline=up/down
tunnel=yes
layer=-N

Значение incline должно быть up, если линия идёт от станции к выходу, или down, если наоборот. Если спуск — эскалатор, а не лестница, добавьте conveying=yes.

Если входов несколько, их стоит объединить линиями highway=footway. Разделение входов и выходов может потребовать простановки тега oneway=yes на некоторые из отрезков. Подземные переходы между станциями обозначаются так же, только с tunnel=yes и соотвествующим layer=*.

Станция, подробнее

Нарисуйте станцию линией от начала до конца платформы (не областью: зачем усложнять, если очень хочется, проставьте width=* в метрах). Точка станции должна входить в эту линию, в идеале — быть посередине. На линию повесьте следующие теги:

railway=platform
public_transport=platform
tunnel=yes
layer=-N
covered=yes
bench=yes

А также почти все теги со станции: name, network, operator, ref и т.п.

На всех (обоих) путях напротив точки станции нужно поставить точки остановки поездов метро с тегами public_transport=stop_position, subway=yes и всеми из предыдущего абзаца (name и т.п.).

Если не удержались и нарисовали платформу областью, не забудьте area=yes.

Дублирование тегов

Как вы заметили, набор одинаковых тегов name, network, operator, а также местами ref и colour ставится на входы в метро, станции, платформы, stop_position и все отношения. Да, это бессмысленное дублирование, которого требуют простота редактирования и простота выборки данных. Его можно устранить через отношения (в частности, public_transport=stop_area), но работать со станциями метро станет гораздо сложнее.

Отношения на станции

Чтобы объединить платформу, выходы, точку станции и всё такое, сделайте отношение public_transport=stop_area с теми же тегами, что на точке станции. Добавьте в него:

  • точку stop_position, если есть, с ролью stop;
  • линию или область платформы с ролью platform;
  • точку railway=station;
  • все выходы railway=subway_entrance;
  • при желании — кассы, турникеты и прочую мелочёвку. Это не обязательно.

В отношении stop_area должна быть только одна станция, даже на пересадочных узлах.

Пересадки

todo: stop_area_group

Всё по пути

При наличии информации желательно обозначать всё:

Подземные POI ставить очень нежелательно, даже с правильным layer, потому что ни один навигатор не сможет определить их недоступность с поверхности.

Линии и маршруты

Линии метро

Рисуем так же, как железные дороги: без лени, каждый путь — отдельной линией. То есть, для начала достаточно нарисовать два параллельных пути от начала до конца. Не знаете, как ветка идёт под землёй — не страшно, рисуйте приблизительно, знающие поправят. Если рисовать одной линией, дальше будут проблемы, рано или поздно придётся раздваивать, и это будет очень сложно.

На линиях путей должны висеть следующие теги:

railway=subway
tunnel=yes
layer=-N

Значение layer должно быть не выше -2: в некоторых городах обычное значение — -5, но в развязках линий слои будут разными. См. ниже комментарий про layer станций.

Также, хорошо бы повесить дополнительные теги. Они должны быть консистентными: одни и те же на всей сети метро. То есть, ширина колеи, вид электрификации, напряжение и т.п. Пути всегда имеют номер: главные — 1 и 2, дополнительные — 3 и выше.

oneway=yes
ref=*
gauge=1520
electrified=rail
frequency=0
voltage=825

На линиях путей не должно быть никаких специфичных для метро тегов (кроме railway=subway): ни цвета, ни названия. Они пойдут на отношения маршрутов (см. ниже). Это всего лишь железнодорожные пути, и при их тегировании следует придерживаться тех же правил, что и для обычных железных дорог. Например, фанаты смогут дорисовать сервисные ветки и расставить railway=buffer_stop в тупиках.

Отношения маршрутов

Маршруты рисуются в полном соответствии со схемой общественного транспорта: по отношению на каждое направление, плюс route_master, их объединяющий. Теги, относящиеся ко всему маршруту, очень желательно добавить на все отношения. То есть, направления будут иметь следующие теги:

type=route
route=subway
name=<название линии>
ref=<номер линии>
colour=*
from=<название первой станции>
to=<название последней станции>
network=*
operator=*

В отношение добавляются сначала парами точки stop_position и точки/линии platform каждой станции с ролями stop и platform, затем по порядку линии путей с пустыми ролями. Для первых и последних станций роли должны называться соответственно *_entry_only и *_exit_only.

Оба отношения для направлений линии нужно включить в специальное отношение ветки метро с теми же тегами, что выше, за исключением from и to, и вместо route в первых двух тегах нужно писать route_master.

Маршруты строящихся линий лучше не рисовать, но если не удержались, добавьте на все три отношения тег construction=yes. Если поезд в разное время следует между разными станциями, может понадобиться сделать больше отношений направлений (см. схему).

network и operator

Это каталог общих значений тегов network=* и operator=* для разных городов в России и за рубежом.

Город, страна network operator
Москва, Россия Московский метрополитен ГУП «Московский метрополитен»
Санкт-Петербург, Россия Петербургский метрополитен ГУП «Петербургский метрополитен»
Нижний Новгород, Россия Нижегородский метрополитен МП «Нижегородское метро»
Новосибирск, Россия Новосибирский метрополитен
Самара, Россия Самарский метрополитен
Екатеринбург, Россия ЕМУП «Екатеринбургский метрополитен»
Казань, Россия Казанский метрополитен МУП «Метроэлектротранс»
Минск, Беларусь Минский метрополитен КУП «Минский метрополитен»
Киев, Украина Київський метрополітен КП "Київський метрополітен"
Харьков, Украина КП «Харківський метрополітен»
Днепропетровск, Украина КП "Днепропетровский метрополитен"
Баку, Азербайджан Bakı Metropoliteni
Ереван, Армения Ереванский метрополитен им. Карена Демирчяна
Тбилиси, Грузия Tbilisi Metro
Алма-Ата, Казахстан Алматинский метрополитен КГП «Метрополитен»
Ташкент, Узбекистан Ташкентский метрополитен Ассоциация «Тошшаҳартрансхизмат»
Сидней, Австралия CityRail
София, Болгария Софийско метро
Нью-Йорк, США New York City Subway

См. также