RU:OSM tags for routing

From OpenStreetMap Wiki
Jump to: navigation, search
Доступные языки — OSM tags for routing
· Afrikaans · Alemannisch · aragonés · asturianu · azərbaycanca · Bahasa Indonesia · Bahasa Melayu · Bân-lâm-gú · Basa Jawa · Basa Sunda · Baso Minangkabau · bosanski · brezhoneg · català · čeština · corsu · dansk · Deutsch · eesti · English · español · Esperanto · estremeñu · euskara · français · Frysk · Gaeilge · Gàidhlig · galego · Hausa · hrvatski · Igbo · interlingua · Interlingue · isiXhosa · isiZulu · íslenska · italiano · Kiswahili · Kreyòl ayisyen · kréyòl gwadloupéyen · Kurdî · latviešu · Lëtzebuergesch · lietuvių · magyar · Malagasy · Malti · Nederlands · Nedersaksies · norsk bokmål · norsk nynorsk · occitan · Oromoo · oʻzbekcha/ўзбекча · Plattdüütsch · polski · português · română · shqip · slovenčina · slovenščina · Soomaaliga · suomi · svenska · Tagalog · Tiếng Việt · Türkçe · Vahcuengh · vèneto · Wolof · Yorùbá · Zazaki · српски / srpski · беларуская · български · қазақша · македонски · монгол · русский · тоҷикӣ · українська · Ελληνικά · Հայերեն · ქართული · नेपाली · मराठी · हिन्दी · भोजपुरी · অসমীয়া · বাংলা · ਪੰਜਾਬੀ · ગુજરાતી · ଓଡ଼ିଆ · தமிழ் · తెలుగు · ಕನ್ನಡ · മലയാളം · සිංහල · བོད་ཡིག · ไทย · မြန်မာဘာသာ · ລາວ · ភាសាខ្មែរ · ⵜⴰⵎⴰⵣⵉⵖⵜ ⵜⴰⵏⴰⵡⴰⵢⵜ‎ · አማርኛ · 한국어 · 日本語 · 中文(简体)‎ · 中文(繁體)‎ · 吴语 · 粵語 · ייִדיש · עברית · اردو · العربية · پښتو · سنڌي · فارسی · ދިވެހިބަސް

Какие объекты карты из базы данных OpenStreetMap могли бы быть вам полезны при решении задач маршрутизации?

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

Одностороннее движение

Дорога является односторонней если и только если: (регистр значения не имеет)

и

  • "oneway"!="no" и
  • "oneway"!="false" и
  • "oneway"!="0"

(oneway=no может выставляться на некоторые highway=motorway)

area:highway=service/residential/unclassified/tertiary/secondary/primary/trunk

Тег area=yes может использоваться для обозначения некого пространства, например рыночной площади, при этом сочетание, например, area:highway=residential означает, что по данному пространству можно проехать на машине в любом направлении, от любой одной крайней точки до другой. (тег highway описывает роутинговую линию, а не полигон)

Такое тегирование не имеет проблем, возникающих при совместном использовании на полигонах тегов area=yes и, например, highway=residential.

Именование

Следующие теги могут содержать то или иное название дороги:

  • name=*, "name:<двухбуквенный-код-языка>", int_name, ...
  • ref=*, "nat_ref", "loc_ref", "int_ref"

См: именование

Существует также внешний xml-вебсервис, который может проделать поиск за вас.

Городские/загородные дороги

Нижеследующее представляет собой попытку составить алгоритм для определения

  • находится ли локация в пределах данного города/страны/почтовой зоны
  • какой город/страна/почтовая зона находится в данной локации

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

Город

Линия находится внутри административного образования, если и только если:

  • а) Она специально отмечена тегом is_in=*. (в России не принято использовать)
  • б) Она находится внутри полигона или мультиполигона
  • в) Полигон Она не находится внутри полигона, но существует точка с тегом place=* внутри полигона, отмеченного тегом landuse=* со значением, отличным от "farm" (ферма), "quarry" (карьер), "forest" (лес) или "water" (водоём) и линия находится внутри комбинации этого полигона и всех пересекающихся с ним или расположенных рядом полигонах подобного рода (такое довольно сложно внедрить, но это вполне действенно)
  • г) Точка Ничего из вышеперечисленного, но есть точка с тегом "place"= менее чем в XX километрах от данной линии.

Для случая (г) существенными вариациями являются:

  1. расстояние вокруг точки задано тегом радиуса в метрах или километрах.
  2. при отсутствии тега радиуса, вот значения по умолчанию:
Тег Элемент Радиус
place=continent Точка не нужен, у континентов уже должны быть полигоны границ
place=country Точка не нужен, страны уже должны иметь полигоны границ
place=state Точка не нужен, штаты, области или иные подобные административные единицы должны иметь полигоны границ
place=region Точка 500 км
place=county Точка 200 км
place=city Точка 10 км
place=town Точка 5 км
place=village Точка 1 км
place=hamlet Точка 300 м
place=suburb Точка 300 м
place=island Точка не нужен, острова должны иметь очерченный полигон береговой линии

Почтовый индекс

Страны

Это тема всё ещё обсуждает в списке рассылки OSM-Dev.

Текущий прогресс задокументирован в статье Tagging Country Borders.

Дороги

Только линии, помеченные тегом highway=*, являются дорогами (роутинговыми линиями), по которым может осуществляться маршрутизация автомобильного, мотоциклетного и пешего движения.

При построении маршрутов для транспортных средств избегайте значений "footway", "pedestrian", "steps", "gate", "stile", "cattle_grid", "viaduct" и учитывайте ограниченность использования "ford", "service"/"services" при прокладке пути.

Дорожные сигналы

Стоит ограничивать предельно допустимую скорость в местах пересечения линии дороги с точками, помеченными highway=traffic_signals, highway=stop, barrier=toll_booth, traffic_calming=* также как и incline=*.

Ограничения доступа

Значения ограничения доступа по умолчанию для каждого типа транспортных средств и каждого типа дороги задокументированы в Access-Restrictions.

Для вычисления ограничений доступа при наличии на пути смеси значений по умолчанию и конкретизированных данных, см. Computing access restrictions.

Ограничения направления движения

Ограничения различных видов поворотов на перекрёстках задокументированы в RU:Relation:restriction.

Ограничения скорости

Если максимально допустимая скорость не задана специально при помощи maxspeed=* см. соответствующий параграф.

Маршрутизация к почтовому адресу

См. addr:*=* для детальной информации об адресах.

Дальнейшее чтение