Pl:Relation:restriction

From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg restriction
France road sign B2b.svg
Opis
Zbiór własności i członów do opisu zakazów i nakazów skrętu. Show/edit corresponding data item.
Grupa: Ograniczenia
Człony
  • linia – from
  • linia – to
  • linia węzeł – via
  • węzeł – wskazówka lokalizacji
Status: w rzeczywistości

Relacja restriction stosowana do zgrupowania zakazów i nakazów skrętu na skrzyżowaniach lub rozjazdach.

Opis

Ograniczenie skrętu na skrzyżowaniu jest reprezentowane przez relację, która ma zestaw tagów opisujących typ ograniczenia skrętu. Ten związek ograniczenia skrętu nie ogranicza się do do samych skrętów, ale może być również użyty, na przykład, jeśli możemy iść na wprost.
Brama autobusowa to kolejny przykład użycia relacji ograniczenia skrętu jako alternatywy dla barrier=bus_trap autobusu. Na skrzyżowaniu przejście z jednej strony na drugą jest ograniczone (z wyjątkiem autobusów oczywiście).

Jest kilka ważnych rzeczy, które należy wziąć pod uwagę przy tworzeniu ograniczenia skrętu.

  • Na skrzyżowaniu może występować kilka ograniczeń dotyczących skrętu, reprezentowanych przez osobne relacje.
  • Nie ma potrzeby ograniczania zmiany kierunku na jednokierunkowej ulicy. Jest to oczywistek.
  • Ograniczenia dotyczące skrętu nie dotyczą pieszych, chyba że typ lub klucz stanowi ograniczenie restriction:foot.
  • Nie mapujemy ograniczeń skrętu, które są domyślne dla danej jurysdykcji i nie są oznakowane. Znacznie lepiej jest zapewnić, aby silniki renderujące uwzględniały regionalne zasady, zamiast mapować każde wystąpienie jako ograniczenie skrętu.

Tagi

Klucz Wartość Opis
type restriction Rodzaj relacji dla relacji ograniczeń.
restriction no_right_turn / no_left_turn / no_u_turn / no_straight_on / only_right_turn / only_left_turn / only_straight_on / no_entry / no_exit

Jeśli pierwszym wyrazem jest "no_", to no dla routingu jest możliwe od "from" do członu "to". Jeśli to jest tylko "only_", w takim razie wiemy, że only routing pochodzący z członu "from" prowadzi do członu "to". To rozróżnienie jest również pokazane w sekcji przykładów na tej stronie.

restriction:hgv, restriction:caravan, restriction:motorcar, restriction:bus, restriction:agricultural, restriction:motorcycle, restriction:bicycle, restriction:hazmat no_right_turn / no_left_turn / no_u_turn / no_straight_on / only_right_turn / only_left_turn / only_straight_on / no_entry / no_exit Ograniczenie dotyczy tylko odpowiedniego typu pojazdu.
(możemy użyć type=restriction:<type> + restriction= lub type=restriction + restriction:<type>=[1])
except psv / bicycle / hgv / motorcar / emergency Ograniczenie nie dotyczy tych typów pojazdów (więcej jak jeden: except=bicycle;psv)
restriction[:<transportation mode>]:conditional <restriction-value> @ <condition>[;<restriction-value> @ <condition> ...] Ograniczenie, które istnieje tylko w określonych warunkach, takich jak czas. Wartość ograniczenia jest jedną z wymienionych powyżej, np. no_right_turn. Wiele wartości (wraz z ich stanem) można oddzielić średnikami. Aby uzyskać szczegółowe informacje, patrz ograniczenia warunkowe.
type restriction:hgv / restriction:caravan / restriction:motorcar / restriction:bus / restriction:agricultural / restriction:bicycle / restriction:hazmat Ograniczenia odnoszą się tylko do odpowiedniego typu pojazdów, zastępując tag type=restriction.
(możemy użyć type=restriction:<type> + restriction= lub type=restriction + restriction:<type>=[1])
day_on day of week na przykład, no_right_turn w porannym szczycie w dni powszednie może być day_on=Monday;day_off=Friday;hour_on=07:30;hour_off=09:30
day_off day of week
hour_on time of day
hour_off time of day

Człony relacji

Linia lub węzeł Role Powtarzalność Dyskusja
linia rola from 1
1 lub więcej
Droga, od której zaczyna się ograniczenie (np. Nie ma od tego miejsca skrętu w prawo).[2] no_entry ograniczenie może mieć jednego lub więcej członów rola from linia, wszystkie inne mogą mieć tylko jeden człon rola from linia.
linia rola to 1
1 lub więcej
Drugi koniec ograniczenia.[2] no_exit ograniczenie może jednego lub więcej człon rola to linia, wszystkie inne mogą mieć tylko jeden człon rola to linia.
węzeł
linia
rola via 1 node
1 lub więcej dróg
Człon rola via łączy początkowe i końcowe drogi reprezentujące dozwolony lub ograniczony manewr.

Jak pokazano po lewej stronie, ograniczenie skrętu może mieć jeden węzeł węzeł w roli rola via, lub jedną lub więcej linia dróg jako członów roli rola via.

Węzeł węzeł lub drogą linia między punktami końcowymi, przez które podróżujesz (jeśli skręt nie był ograniczony) może być prostym węzłem węzeł obrazującym przecięcie się dwóch dróg, lub, biorąc pod uwagę dwupasmową drogę, gdzie nie można skręcić, małą wąską drogą linia łączącą dwie jezdnie.[3]

węzeł rola location_hint 0 lub 1 Wskazówka dla renderer, gdzie może być dobre miejsce do umieszczenia symbolu wskazującego ograniczenie. Na przykład, na N/S/E/W skrzyżowaniu dróg, na których nie można skręcić z punktu S do E, można wstawić węzeł SE, a renderer może umieścić tam znak "zakazu skrętu w prawo".
Ograniczenie skrętu za pomocą jednego węzła węzeł jako człon rola via.
Ograniczenie skrętu za pomocą wielu linii linia jako człon rola via.

Znaki drogowe

Numer znaku w US MUTCD podano w nawiasach. Istnieją nieznaczne różnice między tymi drogowskazami między jednego krajem a drugim. Grafikę znaków skrętu na całym świecie można znaleźć na stronie Wikimedia Commons

Uwaga: Symbole ograniczeń wyświetlanych w edytorach OSM nie są autorytatywne; tagowanie nie może na nich polegać. Np. no_right_turn w JOSM wyświetla symbol 2a (na wprost i na lewo), nawet jeśli nie ma skrętu w lewo. Człony relacji i wartości ograniczeń są ważną częścią.

Znak Ograniczenie Uwaga Znak Ograniczenie Uwaga
1a Signal B21d1.svg restriction=no_left_turn Germany, Italy, Japan, The Netherlands, Russia, Ukraine, Romania (restricts U-turn as well) 1b B2A.svg restriction=no_left_turn Australia, Brazil, France, Ireland, Philippines, Poland, Russia, Spain, Switzerland, UK, Ukraine, US (R3-2; R3-18 combined with no U-turn)
2a Signal B21d2.svg restriction=no_right_turn Germany, Italy, Japan, The Netherlands, Russia, Ukraine, Romania 2b B2B.svg restriction=no_right_turn Australia, Brazil, France, Ireland, Spain, Philippines, Poland, Russia, Switzerland, UK, Ukraine, US (R3-1)
3a Signal B21e.svg restriction=no_straight_on Germany, Israel, Japan, The Netherlands[4], Poland, Russia, Switzerland, Ukraine 3b MUTCD R3-27.svg restriction=no_straight_on Brazil, US (UK and France never use such signs; you would usually be facing a no entry sign in such a situation, or if it's two-way ahead you might see adjacent left-turn-only and right-turn-only signs). Formerly used in Ireland.
4a B2C.svg restriction=no_u_turn Brazil, France, Germany, Israel, Japan, The Netherlands, Philippines, Poland, Spain, Switzerland, Russia, Ukraine, US (R3-4) 4b UK traffic sign 614.svg restriction=no_u_turn Australia, UK
5a Signal B21c1.svg restriction=only_right_turn Typically on the approach to a junction.

In the US, a white rectangular sign is used for this situation and the case where one lane on a multi-lane road must turn (R3-5R).

In the Philippines, it is mainly used before a junction or sometimes in a junction, either on a standalone blue circular sign with a white arrow or a blue circular sign on a white rectangle with text, usually "ALL TRAFFIC".

Ukraine (just before a junction).

5b Signal B211.svg restriction=only_right_turn Typically at the junction.

In the US, a white rectangular sign is used for this situation and the case where one lane on a multi-lane road must turn (R3-5R).

In the Philippines, it is mainly used on a junction with a one-way road, either on a standalone blue circular sign with a white arrow or a blue circular sign on a white rectangle with the text "ONE WAY".

6a Signal B21c2.svg restriction=only_left_turn[5] Typically on the approach to a junction.

In the US, a white rectangular sign is used for this situation and the case where one lane on a multi-lane road must turn (R3-5L).

Ukraine (just before a junction).

6b Signal B212.svg restriction=only_left_turn Typically at the junction.

In the US, a white rectangular sign is used for this situation and the case where one lane on a multi-lane road must turn (R3-5L).

7 Signal B21b.svg restriction=only_straight_on Used in Russia, in Ukraine and in the UK; usually seen just before a junction or on the approach to a junction.

In the US you'll see the text "NO TURNS" in a white square (R3-3; R3-5a is usually used only in the case where one lane on a multi-lane road must turn).

8 RU road sign 3.1.svg restriction=no_entry Used for not one-way roads, where entering across some point (member node with role via) is prohibited. Relation can have several from members[2] and one to member.

In Ukraine is used for opposite-direction one-way road entries, and for roads that even residents are not allowed to drive.

9 RU road sign 3.1.svg restriction=no_exit Used for not one-way roads, where exiting across some point (member node with role via) is prohibited. Relation can have one from member and several to members.[2]

Oczywiście, powyższa tabela nie może być kompletna; np. szwedzkie znaki drogowe używają żółtego tła zamiast białego. Jednak z powyższymi znakami powinno być łatwo znaleźć odpowiednią wartość restriction=xy dla większości krajów.

Ograniczenia czasowe

Zakaz skrętu może być dodatkowo otagowany w ten sposób by pokazać ograniczenia czasowe zakazu.

Nazwa Wartość
day_on=* dzień tygodnia
day_off=* dzień tygodnia
hour_on=* godzina
hour_off=* godzina

Np.: Zakaz skrętu w prawo w godzinach porannych w dni powszednie można oznaczyć jako: day_on=Monday; day_off=Saturday; hour_on=07:30; hour_off=09:30.

Wyjątki dla typów pojazdów

Dodatkowy tag except pozwala na ustalenie wyjątków dla poszczególnych typów pojazdów. Przy wprowadzanie wielu wartości należy je dzielić używając średnika. Możliwe wartości opisane są np tu: access=*

Wartość Opis
psv Autobusy miejskie (public service vehicle)
bicycle Rowery
hgv Ciężarówka ponad 3.5t (heavy goods vehicle)
motorcar Samochody osobowe

Przykłady

Istnieje wyraźne rozróżnienie między dwoma typami ograniczeń dotyczących skrętów. Istnieje "obowiązkowy" typ ograniczeń i "zakazujący" typ ograniczeń skrętu. W przypadku każdego z tych typów ograniczeń należy wybrać odpowiedni sposób.


Tylko skręt w prawo od a do b jest możliwy przez N. Więc skręt w lewo jest zabroniony.

"Obowiązkowe" ograniczenie

Ten typ ograniczeń określa kierunek, w którym można się tylko udać. Poruszanie się inaczej z punktu via jest zabronione z tą relacją. Relacja ograniczenia skrętu jest oznaczona dwoma następującymi tagami:

type=restriction

restriction=only_right_turn

  • droga a ma role 'from'
  • droga b ma role 'to'
  • węzeł N ma role 'via'
Turning left from a to b is not allowed at N.

"Zakazujące" ograniczenie

W przypadku "zakazującego" typu ograniczenia, jest ustalony sposób, w którym kierunku nie wolno się poruszać. Relację ograniczenia można oznaczyć za pomocą następujących tagów:

type=restriction

restriction=no_left_turn

  • droga a ma role 'from'
  • droga b ma role 'to'
  • węzeł N ma role 'via'

Skręt w innym kierunku nie jest zabroniony z tym ograniczeniem. Jeśli istnieją inne ograniczenia na przejściu , będą one musiały być określone osobno.

Użytkownicy dojeżdżający z drogi a przez drogę b nie mogą zjechać na drogę c.

Punkt via ograniczenia skrętu nie musi być węzłem, może być także drogą via. Tak jest w przypadku przykładu po prawej stronie. Ograniczenie skrętu jest oznaczone za pomocą następujących tagów:

type=restriction

restriction=no_right_turn

  • droga a ma role 'from'
  • droga b ma role 'via'
  • droga c ma role 'to'

Edytory OSM

Aby utworzyć ograniczenie skrętu, można użyć różnych edytorów OSM. Niektóre nie obsługują wszystkich opisanych wyżej funkcji!

iD

iD in-editor turn restriction support (animated gif)

The OpenStreetMap web editor iD has (almost) complete in-editor turn restriction support.

  • For turn restrictions whose 'via' member is a node or a way: Native editor support exists. These can be added by selecting the node of the intersection where you want the turn restriction. Then select the way entering the turn and toggle between restricted and unrestricted turns by clicking the red or green icons (iD includes a built-in help for further instructions on how to do this).

JOSM

JOSM has partial in-editor Restriction support, with the use of a plugin.

  • The Turnrestrictions plugin can be downloaded to create and edit turn restrictions which have a node as its 'via' member.
  • Node as 'via' restrictions, or those with a way as the 'via' member, can also be added by manually creating a new relation.

See JOSM Relations and Turn Based Restrictions for further information.

Potlatch 2

Potlatch 2 has partial in-editor Restriction support. Restrictions which require a node as its 'via' member can be edited natively, as shown in the wiki article Potlatch 2/restrictions. Those with a way as the 'via' member must be manually edited using Potlatch 2's relation editing functions.

Vespucci

Vespucci built-in turn restriction creation (click on image to see animation)

Vespucci, the OSM Android editor, supports editing of Restriction relations, but only through relation editing. There is no "interactive" turn restriction function.

Vespucci supports creation of and editing of Restriction relations (both node-as-'via' and way-as-'via' types). Once a Restriction relation exists and is selected, its members (or tags on the relation) are edited via dropdowns.

Błędy

Brakujące ograniczenia skrętu lub błędy z ich powodu mogą być zgłaszane przez różne narzędzia do zgłaszania błędów. Aby sprawdzić, czy ograniczenia skrętu są właściwie zastosowane, można wykonać routing test za pomocą różnych programów routingowych takich jak OSRM.

Istnieje kilka źródeł danych, które można wykorzystać do znalezienia brakujących ograniczeń skrętu lub błędów z ograniczeniem skrętu:

  • Mapillary ma możliwość wyświetlania znaków drogowych na mapie, która została rozpoznana na zdjęciach z widokiem ulicy z góry.
  • Wtyczka The ScoutSigns JOSM potrafi pokazywać rozpoznane znaki drogowe jako warstwę w JOSM. Dane pochodzą z funkcji trybu aparatu w aplikacji GPS Navigation & Maps.
  • The Wtyczka ImproveOsm ma warstwę "Turn Restriction", która wskazuje na prawdopodobnie brakujące ograniczenia skrętu.

Narzędzia

  • Map of Turn Restrictions (ex map.comlu.com) A map which shows turn restriction icons (optionally: warnings and errors) with popup info and highlights the concerned ways on click.
  • Relation Check A tool to generate a graphical display of relations, including restrictions, from a local .osm file
  • OSM Restriction Validator Shows unnecessary restrictions and restrictions that block access to streets
  • keepright checks 8 different types of turn restriction errors, worldwide.
  • OSM Navigation Map helps to explore restriction signs detected from Mapillary and map them

Zobacz także

References

  1. 1.0 1.1 styl restriction:hgv=only_straight_on zgadza się z zatwierdzoną składnią ograniczena warunkowego. Jednak z powodu nierozwiązanego błędu w powszechnie używanym oprogramowaniu może to prowadzić do nieprawidłowego routingu- restriction:hgv=only_straight_on traktowane jest tak, jakby relacja została otagowana restriction=no_*. W rezultacie niektórzy mapujący używają tego rozwiązania type=restriction:hgv + restriction=only_straight_on jako obejście problemu.
  2. 2.0 2.1 2.2 2.3 Człony "from" i "to" muszą zacząć/skończyć w rola via wężle lub rola via drodze, inaczej rozdzielamy!
  3. Uwaga: Przetwarzanie ograniczenia skrętu, które zawiera jeden lub więcej linia dróg w roli rola via jest bardziej skomplikowane niż w przypadku jeśli pojedynczy węzeł węzeł jest użyty w roli rola via. W rezultacie niektóre programy routingowymi działają tylko z ograniczeniami skrętu, które zawierają pojedynczy węzeł linia w roli rola via. Powinno to zostać naprawione przez oprogramowanie, jednak jeśli mamy prosty wybór podczas oznaczania ograniczenia skrętu, rozważmy użycie tylko jednego węzła węzeł w roli rola via.
  4. RVV 1990, sign D7
  5. If tag restriction=only_left_turn wrongly prohibits u-turn in such crossing, where u-turn is allowed, we should use relations restriction=no_straight_on and restriction=no_right_turn instead.