User:Zverik/Метро 2014
В свете принятия новой схемы общественного транспорта в 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
Всё по пути
При наличии информации желательно обозначать всё:
- разделённые пешеходные потоки — каждый своей линией с oneway=yes;
- турникеты: barrier=turnstile + fee=yes/no, также можно turnstile_count=*;
- билетные кассы: shop=ticket + tickets:subway=yes + payment:*=*;
- двери: barrier=door, плюс width=*, если известен; как-то можно обозначить, если дверь на лето снимают;
- промежуточные лестницы и эскалаторы с правильными layer, также covered=yes;
- дополнительная информация для лестниц: step_count=*, width=*, handrail=yes/no, tactile_paving=yes/no и т.п.;
- аппарели на лестницах (рельсы для тележек и колясок): не только ramp=yes/no, но и угол (ramp:incline=24°, или общий incline), минимальную и максимальную ширину колёс (ramp:min_width=* и ramp:max_width=* в миллиметрах);
- газетные киоски (shop=newsagent), банкоматы (amenity=atm), платёжные автоматы (amenity=payment_terminal), телефоны (amenity=telephone).
Подземные 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 |