Jak rysowac drogi
Z UMP
(→0x010e16 – droga w budowie) |
d (literówka) |
||
(Nie pokazano 63 wersji pośrednich.) | |||
Linia 56: | Linia 56: | ||
- | Poszczególne typy dróg | + | Poszczególne typy dróg zostały opisane na osobnych stronach: |
+ | == 0x01 – major highway (autostrada) == | ||
- | + | : [[0x01 – major highway (autostrada)]] | |
- | + | == 0x02 – principal highway (droga szybkiego ruchu/krajowa dwupasmówka) == | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | : [[0x02 – principal highway (droga szybkiego ruchu/krajowa dwupasmówka)]] | |
- | + | == 0x03 – other highway road (droga główna) == | |
- | + | : [[0x03 – other highway road (droga główna)]] | |
- | + | == 0x04 – arterial road (arteria komunikacyjna) == | |
- | + | : [[0x04 – arterial road (arteria komunikacyjna)]] | |
- | + | == 0x05 – collector road (droga zbiorcza) == | |
- | + | ||
- | + | ||
- | + | ||
+ | : [[0x05 – collector road (droga zbiorcza)]] | ||
+ | == 0x06 – residential street (droga lokalna) == | ||
- | + | : [[0x06 – residential street (droga lokalna)]] | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
== 0x07 – alley/private driveway (alejka/dojazd) == | == 0x07 – alley/private driveway (alejka/dojazd) == | ||
- | + | : [[0x07 – alley/private driveway (alejka/dojazd)]] | |
- | + | ||
- | + | ||
- | + | ||
- | + | == 0x08 – highway ramp, low-speed (rampa) == | |
- | + | : [[0x08 – highway ramp, low-speed (rampa)]] | |
- | + | == 0x09 – highway ramp, high-speed (rampa) == | |
- | + | : [[0x09 – highway ramp, high-speed (rampa)]] | |
- | + | == 0x16 – walkway/trail (ścieżka/szlak) == | |
- | + | ||
- | + | ||
- | + | ||
+ | : [[0x16 – walkway/trail (ścieżka/szlak)]] | ||
- | + | == 0x0a – unpaved road (droga gruntowa) == | |
- | + | : [[0x0a – unpaved road (droga gruntowa)]] | |
- | + | == 0x0b – major highway connector (łącznik) == | |
- | + | ||
- | == | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | == | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
+ | : [[0x0b – major highway connector (łącznik)]] | ||
== 0x0c – roundabout (rondo) == | == 0x0c – roundabout (rondo) == | ||
- | + | : [[0x0c – roundabout (rondo)]] | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
= Parametry routingu = | = Parametry routingu = | ||
Linia 276: | Linia 150: | ||
Należy pamiętać, że zasięg zakazu to droga (polyline), którą danym zakazem opisujemy. Czasem konieczne będzie wprowadzenie zakazu na kilka polyline, a czasem konieczne może być podzielenie jednej drogi na dwie (gdy zakaz obowiązuje tylko na części stanowiącej dotąd całość drogi). | Należy pamiętać, że zasięg zakazu to droga (polyline), którą danym zakazem opisujemy. Czasem konieczne będzie wprowadzenie zakazu na kilka polyline, a czasem konieczne może być podzielenie jednej drogi na dwie (gdy zakaz obowiązuje tylko na części stanowiącej dotąd całość drogi). | ||
+ | |||
+ | Zanim omówimy zakazy dla poszczególnych użytkowników dróg, trzeba jeszcze wspomnieć o ograniczeniach dotyczących np. masy, szerokości, czy wysokości pojazdu, umieszczanych w zakładce Extras, wyjaśnionych dokładniej na stronie [[Parametry w Extras|Parametry w Extras]]. Poprzez extras "Moto=yesy" lub "Moto=no" możemy również uszczegółowić routing dla motocykli (dla routingu na WWW). | ||
Poniższa kolejność wynika mniej więcej z częstotliwości stosowania. | Poniższa kolejność wynika mniej więcej z częstotliwości stosowania. | ||
Linia 286: | Linia 162: | ||
Właściwości drogi, zakładka Routing, opcja ''No car/motorcycle''. | Właściwości drogi, zakładka Routing, opcja ''No car/motorcycle''. | ||
- | Droga niedostępna dla samochodów osobowych i motocykli. Zapewne bardzo rzadko wystąpi bez np. zakazów dotyczących ciężarówek. | + | Droga niedostępna dla samochodów osobowych i motocykli. Zapewne bardzo rzadko wystąpi bez np. zakazów dotyczących ciężarówek. Dodatkowo, jeśli zakaz nie dotyczy motocykli (znak B-3) powinniśmy dodać wpis "Moto=yes", co zostanie uwzględnione na routerze WWW. Z kolei zakaz obowiązujący tylko motocykle, ale nie samochody osobowe (znak B-4) należy oznaczyć dodając "Moto=no", ale nie defniując zakazu za pomocą RouteParam. |
- | + | ||
=== Zakaz ruchu samochodów ciężarowych (no truck) === | === Zakaz ruchu samochodów ciężarowych (no truck) === | ||
- | Ustawiasz, gdy na drodze jest zakaz ruchu pojazdów 3,5 tony lub cięższych (można dostawić bojkę ZAKAZ z nazwą jak tonaż). | + | Ustawiasz, gdy na drodze jest zakaz ruchu pojazdów 3,5 tony lub cięższych (można dostawić bojkę ZAKAZ z nazwą jak tonaż) lub ogólny zakaz wjazdu pojazdów ciężarowych (B-5). |
RouteParam=0,0,0,0,0,0,0,0,0,0,0,'''1''' | RouteParam=0,0,0,0,0,0,0,0,0,0,0,'''1''' | ||
Linia 331: | Linia 207: | ||
RouteParam=0,0,0,0,0,0,0,'''1''',0,0,0,0 | RouteParam=0,0,0,0,0,0,0,'''1''',0,0,0,0 | ||
- | Właściwości drogi, zakładka Routing, opcja ''No bus''. | + | Właściwości drogi, zakładka Routing, opcja ''No bus''. Ustawiany wtedy, gdy na drodze występuje znak B-3a. |
Linia 357: | Linia 233: | ||
|B-1 | |B-1 | ||
|zakaz ruchu w obu kierunkach | |zakaz ruchu w obu kierunkach | ||
- | |''no delivery'' + ''no car/motorcycle'' + ''no bus'' + ''no taxi'' + ''no bicycle'' + ''no truck'' | + | |''no delivery'' + ''no car/motorcycle'' + ''no bus'' + ''no taxi'' + ''no bicycle'' + ''no truck''. Dodatkowo można postawić POI typu "ZAKAZ", ale nie ma on znaczenia dla routingu, jedynie wspomaga nas wizualnie pokazując na mapie symbol zakazu wjazdu. Zakaz punktowy najczęściej stawiamy z dodatkowym opisem "szlaban" lub "słupki", w miejscach ich występowania. Przy szlabanach wjazdowych na drogi osiedlowe stosujemy wyłącznie POI z zakazem bez ustawiania restrykcji w RouteParam. |
|- | |- | ||
Linia 367: | Linia 243: | ||
|B-3 | |B-3 | ||
|zakaz wjazdu pojazdów silnikowych, z wyjątkiem motocykli jednośladowych | |zakaz wjazdu pojazdów silnikowych, z wyjątkiem motocykli jednośladowych | ||
- | |Jak B-1, nie ma osobnej kategorii motocykli | + | |Jak B-1, nie ma osobnej kategorii motocykli dla Garminów, ale dodatkowy wpis "Moto=yes" pozwoli na routing motocyklom na WWW. |
|- | |- | ||
Linia 377: | Linia 253: | ||
|B-4 | |B-4 | ||
|zakaz wjazdu motocykli | |zakaz wjazdu motocykli | ||
- | |brak kategorii tylko dla motocykli | + | |brak kategorii tylko dla motocykli w Garminach. Ustawiamy jedynie "Moto=no" (bez RouteParam), aby router na WWW prowadził poprawnie |
|- | |- | ||
Linia 397: | Linia 273: | ||
|tabliczki | |tabliczki | ||
|wyłączenia z zakazów | |wyłączenia z zakazów | ||
- | |np. "nie dotyczy autobusów" – realizujemy odhaczając odpowiednią kategorię z istniejącego zakazu | + | |np. "nie dotyczy autobusów" – realizujemy odhaczając odpowiednią kategorię z istniejącego zakazu. Jeśli wyjątek dotyczy motocykli, dopisujemy w Extras odpowiednio "Moto=yes" (jeśli motocyklom wolno) lub "Moto=no" (jeśli zakaz obejmuje motocykle). |
|} | |} | ||
Linia 423: | Linia 299: | ||
Jeśli jest nakaz jazdy w prawo, mimo że są ulice także na wprost i w lewo – trzeba narysować dwie linie zakazu (jedną prosto, drugą w lewo). | Jeśli jest nakaz jazdy w prawo, mimo że są ulice także na wprost i w lewo – trzeba narysować dwie linie zakazu (jedną prosto, drugą w lewo). | ||
+ | |||
+ | Dodatkowe informacje pod hasłem [[Restrykcje]]. | ||
Uwaga: nie ma potrzeby rysować zakazów skrętu w drogi jednokierunkowe pod prąd – takiej trasy nawigacja i tak nie wyznaczy. | Uwaga: nie ma potrzeby rysować zakazów skrętu w drogi jednokierunkowe pod prąd – takiej trasy nawigacja i tak nie wyznaczy. | ||
- | '''Uwaga2:''' Tak skonstruowany zakaz nie może mieć więcej niż 4 węzły. Możemy więc wyrysować coś bardziej skomplikowanego, jednak maksymalnie do tych 4 węzłów. | + | '''Uwaga2:''' Tak skonstruowany zakaz nie może mieć więcej niż 4 węzły. Możemy więc wyrysować coś bardziej skomplikowanego, jednak maksymalnie do tych 4 węzłów. Zakazy takie (4-punktowe) uwzględniane są w routingu map skompilowanych na Garminy, jendak nie potrafi z nich korzystać router na WWW ani kompilacje 7ways i niektóre inne, więc jeśli to możliwe, lepiej ich unikać. Nie zawsze się da, ale czasem wystarczy trochę pomyśleć. Przykładowo -- w sytuacji jak poniżej, można narysować 2 zakazy 4-punktowe, ale w zupełności wystarczą 3-punktowe, jak na prawym obrazku. Zakaz pokazany niebieską strzałką daje zakaz zawracania przy jeździe na południowy wschód (bo po skręcie w lewo nie da się kontynuować w prawo pod prąd), natomiast ten narysowany na czerwono pozwoli na skręt w lewo, ale nie na zawrócenie. W obu przypadkach warto jednak definicję zakazu uzupełnić opisem "Sign=ZAKAZ_ZAWRACANIA", w przeciwnym razie domyślnie zostanie tam umieszczony znak zakazu skrętu w lewo. |
+ | |||
+ | [[Grafika:zakaz-4.png]] [[Grafika:zakaz-4a.png]] | ||
Jeśli jakiś zakaz '''nie''' dotyczy którejś kategorii pojazdów (najczęściej: autobusy komunikacji miejskiej), to należy dodać '''ręcznie''' następujący parametr linii Zakaz: | Jeśli jakiś zakaz '''nie''' dotyczy którejś kategorii pojazdów (najczęściej: autobusy komunikacji miejskiej), to należy dodać '''ręcznie''' następujący parametr linii Zakaz: | ||
Linia 438: | Linia 318: | ||
ForceSpeed=x (gdzie x to słowo "slower" lub "faster", ewentualnie wartość 0..6) | ForceSpeed=x (gdzie x to słowo "slower" lub "faster", ewentualnie wartość 0..6) | ||
- | Każdy typ drogi ma przypisany indeks prędkości (zostały one wymienione w poprzednim rozdziale). Jest to wartość wykorzystywana przy obliczaniu czasu podróży tą drogą. W niektórych (niezbyt częstych) przypadkach, przydatne może okazać się przypisanie danej drodze innej prędkości – robimy to za pomocą tego parametru, dopisywanego w zakładce | + | Każdy typ drogi ma przypisany indeks prędkości (zostały one wymienione w poprzednim rozdziale). Jest to wartość wykorzystywana przy obliczaniu czasu podróży tą drogą. W niektórych (niezbyt częstych) przypadkach, przydatne może okazać się przypisanie danej drodze innej prędkości – robimy to za pomocą tego parametru, dopisywanego w zakładce [[Extras]] właściwości drogi. |
Przykładem takiego przypadku może być dojazd do miejscowości, do której prowadzą dwie drogi tej samej kategorii, np. dwie drogi gruntowe. Załóżmy, że rozpoczynają się i kończą w tych samych miejscach. Jedna z nich jest krótsza, ale wyboista i zimą nieodśnieżana, druga poprowadzona lekko naokoło, ale mniej stroma, zadbana i regularnie odśnieżana. Ponieważ obie to drogi gruntowe, w normalnych warunkach nawigacja poprowadzi trasę krótszą drogą – zarówno przy wyborze opcji trasy krótszej, jak i szybszej, ponieważ w przypadku dróg tej samej kategorii droga krótsza jest w oczywisty sposób szybsza. | Przykładem takiego przypadku może być dojazd do miejscowości, do której prowadzą dwie drogi tej samej kategorii, np. dwie drogi gruntowe. Załóżmy, że rozpoczynają się i kończą w tych samych miejscach. Jedna z nich jest krótsza, ale wyboista i zimą nieodśnieżana, druga poprowadzona lekko naokoło, ale mniej stroma, zadbana i regularnie odśnieżana. Ponieważ obie to drogi gruntowe, w normalnych warunkach nawigacja poprowadzi trasę krótszą drogą – zarówno przy wyborze opcji trasy krótszej, jak i szybszej, ponieważ w przypadku dróg tej samej kategorii droga krótsza jest w oczywisty sposób szybsza. | ||
Linia 450: | Linia 330: | ||
Innym dość typowym przykładem zastosowania ForceSpeed jest np. uliczka między blokami, którą routing skraca jakąś trasę, nawet pomimo tego iż ta uliczka to dajmy na to residential (0x6), a okoliczne collector (0x5) – po prostu skrót jest dość spory. Jeśli trasa nie powinna być tamtędy tyczona, powinniśmy ustawić na tym odcinku ''ForceSpeed=slower''. | Innym dość typowym przykładem zastosowania ForceSpeed jest np. uliczka między blokami, którą routing skraca jakąś trasę, nawet pomimo tego iż ta uliczka to dajmy na to residential (0x6), a okoliczne collector (0x5) – po prostu skrót jest dość spory. Jeśli trasa nie powinna być tamtędy tyczona, powinniśmy ustawić na tym odcinku ''ForceSpeed=slower''. | ||
+ | Innym, niezależnym parametrem dotyczącym prędkości jest parametr "Speed=". W ten sposób oznaczamy istniejące na drogach ograniczenia prędkości wprowadzane tam odpowiednimi znakami zakazu (np. Speed=70" -- ograniczenie do 70 km/h). Możemy w ten sposób oznaczać także ulice znajdujące się w strefach 30 itp. Parametr Speed= nie jest tłumaczony na żaden parametr routingu w odbiornikach Garmin (niektóre mapy potrafią pokazać go jako dodatkową informację, ale my jeszcze nie), natomiast jest uwzględniany i pokazywany na routingu WWW (na http://trasy.ump.waw.pl/ ) | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Linia 479: | Linia 360: | ||
|} | |} | ||
- | == Kategoria == | + | == Kategoria (klasa)== |
ForceClass=x (gdzie x = 0..4) | ForceClass=x (gdzie x = 0..4) | ||
Linia 485: | Linia 366: | ||
Analogicznie do ustawienia prędkości na danej drodze, możemy zmienić jej indeks kategorii. | Analogicznie do ustawienia prędkości na danej drodze, możemy zmienić jej indeks kategorii. | ||
+ | == Ciągłość klas == | ||
- | + | Każda droga na mapie otrzymuje na etapie kompilacji określoną klasę (wartość od 0 do 4, gdzie 4 to droga najważniejsza). Garminy są bardzo wrażliwe na ciągłość tych klas, a brak ciągłości często skutkuje bardzo fantazyjnym wyznaczaniem tras. Większość typów dróg (0x1-0x7, 0xd) ma przypisaną klasę na stałe, a część obiektów (ronda, rampy, łączniki, tunele) ma ustalaną klasę automatycznie, w zależności od obiektów które łączą (dzięki temu nie musimy pamiętać aby rondom i rampom nadawać klasę). Aby zapewnić ciągłość klas musimy odpowiednio rysować wszelkie łączniki i serwisówki łączące ze sobą drogi. Ogólna zasada jest taka, że łącznik pomiędzy drogami (o ile nie jest rondem, rampą, łącznikiem czy tunelem) powinien być narysowany typem jednej z dróg, które łączy. Więcej informacji szukaj [[Ciągłość_klas|na innej stronie]]. | |
= Zagadnienia = | = Zagadnienia = | ||
Linia 497: | Linia 379: | ||
A na mapie: | A na mapie: | ||
*jeśli trzeba – wycinamy odcinek z dłuższego kawałka drogi | *jeśli trzeba – wycinamy odcinek z dłuższego kawałka drogi | ||
- | *odpinamy końce wyłączonego odcinka, ewentualnie wstawiamy ograniczenia pojazdów (zakładka Routing), w komentarzu wpisując numer zgłoszenia Flyspray. Jeżeli odpinamy odcinek jednokierunkowy, na czas odpięcia musimy zdjąć z niego jednokierunkowość i najlepiej zaznaczyć to w komentarzu (bo routing w odbiornikach nie lubi, jak się go zapędzi w miejsce bez wyjścia, czyli koniec jednokierunkowej drogi wiszący w próżni) | + | *odpinamy końce wyłączonego odcinka, ewentualnie wstawiamy ograniczenia pojazdów (zakładka Routing), w komentarzu wpisując numer zgłoszenia Flyspray. Jeżeli odpinamy odcinek jednokierunkowy, na czas odpięcia musimy zdjąć z niego jednokierunkowość (lub z innych jednokierunkowych, od których go odpięliśmy) i najlepiej zaznaczyć to w komentarzu (bo routing w odbiornikach nie lubi, jak się go zapędzi w miejsce bez wyjścia, czyli koniec jednokierunkowej drogi wiszący w próżni) |
- | **kwestia dyskusyjna: odcinkowi zmieniamy typ na "w budowie" ( | + | **kwestia dyskusyjna: odcinkowi zmieniamy typ na "w budowie" (0x10e13). W takim wypadku nie musimy jego końców odpinać od istniejących skrzyżowań. |
** opcjonalnie: redukujemy widoczność na wyższych poziomach | ** opcjonalnie: redukujemy widoczność na wyższych poziomach | ||
*stawiamy punkt typu REMONT (żółta okrągła bojka typu 0x1712) z etykietą w stylu "FS#1234 remont taki-a-siaki do końca 12.2010" (widok na www będzie zamieniał FS# na link do konkretnego zgłoszenia FlySpray) | *stawiamy punkt typu REMONT (żółta okrągła bojka typu 0x1712) z etykietą w stylu "FS#1234 remont taki-a-siaki do końca 12.2010" (widok na www będzie zamieniał FS# na link do konkretnego zgłoszenia FlySpray) | ||
- | **punktów REMONT możemu używać zamiast bojek "ślepy" tam gdzie trzeba – spełniają tę samą funkcję, maskując ostrzeżenia o ślepych, a po zakończeniu remontu nie będzie wątpliwości czy tam jest/była ślepa, tylko że trzeba sprawdzić, bo się mogło pozmieniać. | + | **punktów REMONT możemu używać zamiast bojek "ślepy" tam gdzie trzeba (np. na końcach pozostałych po odpięciu dróg, które nadal są przejezdne) – spełniają tę samą funkcję, maskując ostrzeżenia o ślepych, a po zakończeniu remontu nie będzie wątpliwości czy tam jest/była ślepa, tylko że trzeba sprawdzić, bo się mogło pozmieniać. |
== Komunikaty głosowe == | == Komunikaty głosowe == | ||
Linia 507: | Linia 389: | ||
Tutaj informacja, [[Komunikaty_głosowe|jak rysować żeby komunikaty głosowe był poprawne]] | Tutaj informacja, [[Komunikaty_głosowe|jak rysować żeby komunikaty głosowe był poprawne]] | ||
- | == Trzeci wymiar == | + | == Trzeci wymiar - 3D== |
czyli "po prostu" wiadukty, a nawet wielopoziomowe węzły. | czyli "po prostu" wiadukty, a nawet wielopoziomowe węzły. | ||
- | Mapa w wersji www oraz w konwersji do Navitel jest w stanie pokazywać 'wysokościowe' zależności elementów, chociażby która droga idzie wiaduktem, a która dołem. W | + | Mapa w wersji www oraz w konwersji do Navitel jest w stanie pokazywać 'wysokościowe' zależności elementów, chociażby która droga idzie wiaduktem, a która dołem. W odbiorniku – tylko drogi, koleje nie, na WWW – zarówno drogi jak i koleje. |
Jak? | Jak? | ||
- | * nie używaj [[Mont-demont|mont-demont.bat]] | + | * <del>nie </del>używaj [[Mont-demont|mont-demont.bat]] lub [[mdm-gui]] z ptaszkiem "Specjalne traktowanie typów" (w ME++ – bez znaczenia) lub "make mont"/"make demont" (uniks lub Windows z cygwinem) |
* Jeśli używasz ME (nie ME++), po zmontowaniu mapy zmień typ (File – Map properties, pierwsza zakładka) z Garmin na Navitel (w ME++ działa i bez tego) | * Jeśli używasz ME (nie ME++), po zmontowaniu mapy zmień typ (File – Map properties, pierwsza zakładka) z Garmin na Navitel (w ME++ działa i bez tego) | ||
* każdemu węzłowi drogi w trybie ''Edycja'' można ustawić jego wysokość we względnej skali od -2 do 15 (w ME++ także węzłom kolejowym) | * każdemu węzłowi drogi w trybie ''Edycja'' można ustawić jego wysokość we względnej skali od -2 do 15 (w ME++ także węzłom kolejowym) | ||
* nacisnąć M, dwuklik na którymś punkcie drogi albo prawy klik i "Properties", zakładka 3D, ptaszek przy Has 3D, wybrać wartość: | * nacisnąć M, dwuklik na którymś punkcie drogi albo prawy klik i "Properties", zakładka 3D, ptaszek przy Has 3D, wybrać wartość: | ||
** "0" dla obiektów na poziomie gruntu – nie trzeba im tego deklarować jawnie, chyba że w tym miejscu określamy koniec/początek odcinka wysokościowego. | ** "0" dla obiektów na poziomie gruntu – nie trzeba im tego deklarować jawnie, chyba że w tym miejscu określamy koniec/początek odcinka wysokościowego. | ||
- | ** "-2" dla tunelu, "-1" wykop lub stan pośredni. Jeśli tunel jest tunelem z prawdziwego zdarzenia (odpowiednio długi, z reguły z ograniczeniami prędkości, nazwą, itp.), to rysujemy go typem 0x0e, | + | ** "-2" dla tunelu, "-1" wykop lub stan pośredni. Jeśli tunel jest tunelem z prawdziwego zdarzenia (odpowiednio długi, z reguły z ograniczeniami prędkości, nazwą, itp.), to rysujemy go typem 0x0e, natomiast wszelkie przejazdy pod innymi drogami, nawet jeśli mają 100-200m, rysujemy takim typem, jak droga, w ciągu której się znajduje, obniżając tylko wysokość. |
- | ** "1" to rampa/nasyp, "2" to standardowy wiadukt lub most. Nie trzeba definiować wszystkich punktów po drodze, wystarczy np. jeden punkt 0 na początku, drugi z wartością 2 | + | ** "1" to rampa/nasyp, "2" to standardowy wiadukt lub most. Nie trzeba definiować wszystkich punktów po drodze, wystarczy np. jeden punkt 0 na początku, drugi niedaleko potem z wartością 2 przed przecięciem z drogą/obiektem, nad którym znajduje się most/wiadukt, kolejny z wartością 2 za tym obiektem i ostatni z wartością 0 za mostem (żeby się most nie ciągnął przez kolejne 3 kilometry). Jeśli most/wiadukt jest bardzo krótki (kilka(naście) metrów), można zamiast dwóch punktów o wysokości 2 postawić tylko jeden na środku, ale preferowana metoda zaznaczania to 2 punkty, żeby mieć pewność, że interpolowany punkt przejścia wysokości z 0 na 2 nie wypadnie na przykład gdzieś nad wodą :-) |
** Jeśli w punkcie oznaczonym niezerową wysokością znajduje się skrzyżowanie (np. rampa odbijająca z wiaduktu) albo nawet tylko koniec jednej drogi i początek kolejnej (np. ze względu na zmianę nazwy), pamiętaj by w tym punkcie ustawić tę samą wysokość na wszystkich spotykających się tam drogach. | ** Jeśli w punkcie oznaczonym niezerową wysokością znajduje się skrzyżowanie (np. rampa odbijająca z wiaduktu) albo nawet tylko koniec jednej drogi i początek kolejnej (np. ze względu na zmianę nazwy), pamiętaj by w tym punkcie ustawić tę samą wysokość na wszystkich spotykających się tam drogach. | ||
Linia 533: | Linia 415: | ||
Opisane w pierwszym rozdziale typy dróg to podstawa, na której bazuje budowa mapy i protokół routingu. Nie są to jednak wszystkie możliwe typy. Poniżej przedstawione zostały typy opisujące inne mogące wystąpić na mapie ''polyline'': | Opisane w pierwszym rozdziale typy dróg to podstawa, na której bazuje budowa mapy i protokół routingu. Nie są to jednak wszystkie możliwe typy. Poniżej przedstawione zostały typy opisujące inne mogące wystąpić na mapie ''polyline'': | ||
+ | == 0x0d – ścieżka rowerowa == | ||
- | + | : [[0x0d – ścieżka rowerowa]] | |
- | + | == 0x0e – tunel == | |
- | + | : [[0x0e – tunel]] | |
+ | == 0x0f – droga gruntowa typu 4x4 == | ||
- | + | Droga gruntowa przez pole lub w lesie wymagająca napędu na 4 koła (4x4): [[0x0f – gruntowa 4x4]] | |
- | + | == 0x14 – kolej == | |
- | + | [[Tory|Kolej]] (w źródłach zmieniana potem na 0x10e14, ale na mapie rysowana 0x14) | |
- | == | + | == 0x010e10 – tramwaj == |
- | Typ: | + | Typ: 0x010e10 |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | Tak oznaczamy linię tramwajową. W nazwie zawieramy informację o numerach linii, w sposób następujący: 4-5-9-10-15-40. | |
- | |||
+ | == 0x010e11 – ulica planowana (w mieście i na wsi) == | ||
- | + | Typ: 0x010e11 | |
- | + | W ten sposób oznaczamy przebieg planowanych/budowanych ulic (miasto/wieś). W planach lub wczesnym stadium realizacji, gdzie przebieg może być przybliżony. | |
- | + | == 0x010e12 – droga planowana == | |
- | + | Typ: 0x010e12 | |
- | + | W ten sposób oznaczamy przebieg planowanych/budowanych dróg. W planach lub wczesnym stadium realizacji, gdzie przebieg może być przybliżony. | |
- | |||
+ | == 0x010e13 – droga w budowie == | ||
- | + | Typ: 0x010e13 | |
- | Typ: | + | W ten sposób oznaczamy drogi w budowie -- w zaawansowanym stadium budowy, gdzie przebieg już nie jest przybliżony (choć może się zdarzyć, że innego źródła nie mamy i musi), albo (najlepiej) - pochodzi z jakiegoś śladu, choćby przejazdu rowerem po zamkniętym jeszcze odcinku. Typ należy traktować tak, jak by był routowalny, więc w miarę możliwości ustawiać wysokość wiaduktom, stawiać bojki SLEPY/WIADUKT itp., żeby otwarcie odcinka było bezproblemowe i wymagało jedynie zmiany typu na odpowiedni. Tym typem można też oznaczać drogi w przebudowie/remonty (o ile to gruntowna przebudowa i nie wystarczy "zwykłe" zaznaczenie zakazów wjazdu). |
+ | |||
+ | == 0x010e15 – kolej podziemna == | ||
+ | |||
+ | Typ: 0x010e15 | ||
Tym typem opisujemy kolej podziemną (ewentualnie także rozebrany przez złomiarzy lub kolejarzy odcinek kolejowy) | Tym typem opisujemy kolej podziemną (ewentualnie także rozebrany przez złomiarzy lub kolejarzy odcinek kolejowy) | ||
+ | |||
+ | == 0x010e16 – kolejka linowa == | ||
+ | |||
+ | Kolejka linowa - krzesełkowa lub gondolowa. | ||
+ | |||
+ | |||
+ | == 0x010e17 – Wyciąg narciarski == | ||
+ | |||
+ | Wyciąg narciarski - orczyk itp. | ||
== Szlaki rowerowe == | == Szlaki rowerowe == | ||
- | + | 0x10e08 szlak rowerowy czerwony | |
- | + | 0x10e09 szlak rowerowy żółty | |
- | + | 0x10e0a szlak rowerowy zielony | |
- | + | 0x10e0b szlak rowerowy niebieski | |
- | + | 0x10e0c szlak rowerowy czarny | |
== Szlaki piesze == | == Szlaki piesze == | ||
- | + | Poniższe oznaczenia stosujemy do rysowania [[Szlaki|szlaków PTTK-owskich]], miejskich itp., których kolor jest jednoznacznie określony. | |
- | + | 0x10e00 szlak pieszy czerwony | |
- | + | 0x10e01 szlak pieszy żółty | |
- | + | 0x10e02 szlak pieszy zielony | |
- | + | 0x10e03 szlak pieszy niebieski | |
- | + | 0x10e04 szlak pieszy czarny | |
- | + | 0x10e07 (multicolor) kilka nałożonych szlaków pieszych | |
- | + | == 0x010e1a – wał przeciwpowodziowy == | |
+ | |||
+ | |||
+ | == 0x010e1b – mury obronne == | ||
Aktualna wersja
Podstawy
Każda droga, po której może poruszać się samochód, rower lub człowiek (czy jakikolwiek inny obiekt, korzystający z nawigacji), odwzorowywana jest na mapie za pomocą odcinków. Pojedynczy zestaw odcinków, opisujący zwykle ulicę lub jej część (lub, zależnie od typu, ścieżkę, polną drogę czy nitkę autostrady) nazywa się w ME polyline. Najkrótsza polyline to prosty odcinek zawierający tylko dwa węzły. W przypadku dłuższych ulic/dróg rysujemy bardziej rozbudowane polyline – węzeł po węźle, aż wynikowa droga będzie przypominała kształtem to, po czym w naturze podróżujemy. W dalszej części artykułu zamiast polyline stosowany jest zamiennie termin droga.
Powstałą na mapie drogę opisujemy przede wszystkim typem i nazwą.
Typ drogi opisuje, czym ta droga jest w rzeczywistości. Poszczególne typy oznaczone są liczbowo, stosujemy następujące typy dróg (wynikające z podziału Garmina, stąd ważne są ich oryginalne nazwy):
- 0x16 walkway/trail (ścieżka/szlak)
- 0x0d ścieżka rowerowa
- 0x0a unpaved road (droga gruntowa)
- 0x07 alleyway/private driveway (alejka, dojazd)
- 0x06 residential street (droga lokalna)
- 0x05 collector road (droga zbiorcza)
- 0x04 arterial road (arteria komunikacyjna)
- 0x03 other highway road
- 0x02 principal highway
- 0x01 major highway
- 0x0c roundabout (rondo)
- 0x0b major highway connector (łącznik)
- 0x08 highway ramp, low-speed (rampa)
- 0x09 highway ramp, high-speed (rampa)
Przy wyborze trasy nawigacja kieruje się typami dróg na przynajmniej dwa sposoby. Po pierwsze, na podstawie ustawionego typu pojazdu i/lub dodatkowych preferencji część dróg może być dyskwalifikowana. Czyli np. dla samochodu odrzucane są trasy które miałyby prowadzić przez ścieżki, a przy wybraniu opcji unikania dróg gruntowych te także są pomijane (ważna uwaga: jeśli przeznaczenie trasy leży przy np. drodze gruntowej, i tak zostaniemy na nią skierowani, patrz uwagi poniżej). Po drugie, czas podróży obliczany jest na podstawie średnich prędkości przyjętych (a potem także rekalkulowanych, o czym w dalszych rozdziałach) dla danych typów dróg – w oczywisty sposób 100km po autostradzie będzie krótszą wycieczką, niż 90 km po drogach lokalnych. Tak więc przy wyborze najszybszej trasy ważne jest, jakiego typu drogi składają się na możliwe sposoby dotarcia do celu.
Uwaga: proces wyznaczania trasy jest bardziej skomplikowany i nie opiera się jedynie na typach dróg i prędkościach na nich uzyskiwanych. W dalszej części artykułu podawane będą także dodatkowe kryteria, powyższe można jednak uznać za podstawowe.
Niezależnie jednak od typów dróg i kryteriów routingu należy pamiętać o zachowaniu algorytmu routingu w przypadku gdy do punktu docelowego nie da się dotrzeć w pożądany sposób (pożądany np. typem drogi lub pojazdu). Otóż nawigacja w takim przypadku wyznacza drogę z pominięciem ograniczeń.
Przykład 1. Mamy zaznaczone unikanie dróg gruntowych, a do miejscowości, do której chcemy dojechać, nie ma innej drogi – zostaniemy skierowani na drogę gruntową
Przykład 2. Punkt, do którego chcemy dotrzeć, znajduje się w strefie zakazu ruchu lub przy ścieżce – nawigacja poprowadzi nas w strefę z zakazem ruchu lub na ścieżkę tak, aby dotrzeć jak najbliżej pożądanego punktu.
Po przemyśleniu ma to oczywiście sens, ponieważ w większości przypadków alternatywą byłoby wyznaczenie drogi tylko do pewnego momentu, a dalszą część i tak należałoby przebyć piechotą lub innym środkiem lokomocji (czyli sytuacja taka sama, przy czym tak od razu mamy wyznaczoną resztę trasy). Istotne jednak staje się, w którym miejscu (koło jakiego typu drogi) stawiamy punkty POI, świadomi jak może zostać do nich skierowany użytkownik nawigacji.
Opisy poszczególnych typów dróg i wskazówki ich zastosowania – w następnym rozdziale.
Nazwa drogi to najczęściej nazwa ulicy, czasem poprzedzona numerem drogi (gdy ulica jest częścią drogi wojewódzkiej, krajowej etc – poza miejscowościami pozostaje sam numer drogi). Co ważne, kilka polyline może mieć taką samą nazwę, i jest to bardzo częste zjawisko. Musi tak być na przykład dla ulic, które po części są gruntowe, po części asfaltowe, ale stosowane jest także ze względu na kategoryzację (ulica lokalna staje się w pewnym miejscu zbiorczą, a nazwa pozostaje taka sama) oraz adresację (boczne odnogi ulicy noszą jej nazwę, ponieważ znajdują się przy niej posesje opisywane numerami przypisanymi do "głównej" ulicy).
Nazwą niektórych dróg może być także jej przynależność do stacji benzynowej, sklepu etc. Okalamy ją wtedy nawiasami, które powodują wyłączenie takiej nazwy z indeksowania (czyli nazwa ta nie będzie traktowana na równi z właściwymi nazwami ulic) – "{BP}", "{podjazd do Castoramy}".
Typy dróg
Jak już zostało powiedziane, typ drogi opisuje (czy też próbuje opisać), czym dana droga jest w rzeczywistości – gruntówką, drogą lokalną, czy też może autostradą. Na podstawie typu drodze przypisywane są (na etapie kompilacji mapy) różne atrybuty, z których podstawowe to indeks prędkości oraz kategoria (indeks kategorii).
Domyślnie Garmin definiuje prędkości dla każdego typu drogi. Pod koniec 2011 w UMP te domyślne wartości dla dróg w miastach (konkretniej, dla dróg nazwanych, czyli posiadających Label inny niż tylko numer drogi) zostały zmienione, aby lepiej przewidywać czas podróży.
Pozostałe parametry są dodatkowymi wskazówkami dla routingu (np. droga jednokierunkowa, zakazy ruchu, droga płatna – pełna lista w jednym z kolejnych rozdziałów). W większości przypadków konkretnym typom dróg automatycznie przypisywane są jedynie indeksy prędkości oraz kategorii, pozostałe parametry pozostają nieustawione (czyli ustawiane są w razie potrzeby dla konkretnych polyline).
Dodatkowo podany został domyślny poziom zbliżenia, w jakim dany typ pojawi się w odbiorniku (EndLevel), wraz z podziałką, jaka go opisuje.
Poszczególne typy dróg zostały opisane na osobnych stronach:
0x01 – major highway (autostrada)
0x02 – principal highway (droga szybkiego ruchu/krajowa dwupasmówka)
0x03 – other highway road (droga główna)
0x04 – arterial road (arteria komunikacyjna)
0x05 – collector road (droga zbiorcza)
0x06 – residential street (droga lokalna)
0x07 – alley/private driveway (alejka/dojazd)
0x08 – highway ramp, low-speed (rampa)
0x09 – highway ramp, high-speed (rampa)
0x16 – walkway/trail (ścieżka/szlak)
0x0a – unpaved road (droga gruntowa)
0x0b – major highway connector (łącznik)
0x0c – roundabout (rondo)
Parametry routingu
Do każdej drogi (polyline) możemy przypisać parametry, zawierające dodatkowe informacje dla algorytmu routingu. Najczęściej występującym dodatkowym opisem dróg jest jednokierunkowość. Inne parametry to np. zakazy dotyczące konkretnej grupy użytkowników/pojazdów (samochody, ciężarówki, taksówki).
Poniżej lista parametrów, które możemy ustawiać. W większości przypadków polega to na zaznaczeniu odpowiedniej opcji we właściwościach drogi w ME++ – odpowiednie wpisy (podane przy każdym z nich) zostaną dodane przez program.
Spora część parametrów reprezentowana jest w linii "RouteParam=". Po znaku "=" znajduje się w niej 12 znaków "0" i "1" oddzielonych przecinkami. Jedynka oznacza włączenie danego parametru.
Jednokierunkowość (polyline has direction)
DirIndicator=1 RouteParam=0,0,1,0,0,0,0,0,0,0,0,0
Jednokierunkowość drogi oznaczamy wybierając we właściwościach drogi (zakładka pierwsza – Properties) opcję Polyline has direction. Droga zostaje oznaczona strzałką na końcu. Nie ustawiamy tego w parametrach routingu, ale właśnie ptaszkiem w zakładce głównej.
Uwaga: o tym, w którym kierunku można się daną drogą poruszać, decyduje kolejność węzłów drogi (od pierwszego węzła w kierunku kolejnych). W trybie edycji węzłów (M) pierwszy węzeł oznaczony jest w ME++ kolorem różowym.
Jeśli droga narysowana jest w odwrotnym kierunku, należy wybrać funkcję Reverse Polyline (dostępną w menu pod prawym przyciskiem myszy). Kolejność węzłów zostanie odwrócona.
Należy używać wyłącznie DirIndicator, kierunkowość w parametrach routingu jest poprawiana w czasie kompilacji.
Droga płatna (route is toll)
RouteParam=0,0,0,1,0,0,0,0,0,0,0,0
Właściwości drogi, zakładka Routing, opcja Route is toll.
Ten parametr oznacza, że przejazd tą drogą jest płatny. Umożliwia to routingowi uzależnienie trasy od wyboru przez użytkownika (w odbiorniku GPS) opcji unikania dróg płatnych. W polskich warunkach oznaczamy w ten sposób płatne odcinki autostrad, można go ustawić także na parkingach w galeriach handlowych (szczególnie wtedy, gdy mamy więcej niż jeden wjazd/wyjazd – jest to wówczas zgodny z rzeczywistością i praktyczny sposób na uniknięcie przeciągnięcia routingu "na skróty" przez parking :) )
Zakazy (w ramach jednej polyline)
Kolejne parametry to zakazy poruszania się tą drogą dla poszczególnych typów pojazdów/użytkowników.
Podział na typy pojazdów/użytkowników wynika z przeznaczenia mapy. Ta sama mapa może być stosowana w nawigacji dla samochodu osobowego, ciężarowego, jak i taksówki, czy wreszcie piechura lub rowerzysty (niezależnie od tego, czy jest to inny odbiornik GPS, wyboru dokonuje się w opcjach routingu tego odbiornika).
Zakazy często występują wspólnie, ponieważ np. znak B-1 "zakaz ruchu w obu kierunkach" oznacza zarówno zakaz ruchu samochodów osobowych, jak i ciężarówek czy motocykli, podczas gdy znak B-5 będzie już dedykowany wyłącznie samochodom ciężarowym.
Należy pamiętać, że zasięg zakazu to droga (polyline), którą danym zakazem opisujemy. Czasem konieczne będzie wprowadzenie zakazu na kilka polyline, a czasem konieczne może być podzielenie jednej drogi na dwie (gdy zakaz obowiązuje tylko na części stanowiącej dotąd całość drogi).
Zanim omówimy zakazy dla poszczególnych użytkowników dróg, trzeba jeszcze wspomnieć o ograniczeniach dotyczących np. masy, szerokości, czy wysokości pojazdu, umieszczanych w zakładce Extras, wyjaśnionych dokładniej na stronie Parametry w Extras. Poprzez extras "Moto=yesy" lub "Moto=no" możemy również uszczegółowić routing dla motocykli (dla routingu na WWW).
Poniższa kolejność wynika mniej więcej z częstotliwości stosowania.
Zakaz ruchu samochodów osobowych/motocykli (no car/motorcycle)
RouteParam=0,0,0,0,0,0,1,0,0,0,0,0
Właściwości drogi, zakładka Routing, opcja No car/motorcycle.
Droga niedostępna dla samochodów osobowych i motocykli. Zapewne bardzo rzadko wystąpi bez np. zakazów dotyczących ciężarówek. Dodatkowo, jeśli zakaz nie dotyczy motocykli (znak B-3) powinniśmy dodać wpis "Moto=yes", co zostanie uwzględnione na routerze WWW. Z kolei zakaz obowiązujący tylko motocykle, ale nie samochody osobowe (znak B-4) należy oznaczyć dodając "Moto=no", ale nie defniując zakazu za pomocą RouteParam.
Zakaz ruchu samochodów ciężarowych (no truck)
Ustawiasz, gdy na drodze jest zakaz ruchu pojazdów 3,5 tony lub cięższych (można dostawić bojkę ZAKAZ z nazwą jak tonaż) lub ogólny zakaz wjazdu pojazdów ciężarowych (B-5).
RouteParam=0,0,0,0,0,0,0,0,0,0,0,1
Właściwości drogi, zakładka Routing, opcja No truck.
Zakaz ruchu rowerów (no bicycle)
RouteParam=0,0,0,0,0,0,0,0,0,0,1,0
Właściwości drogi, zakładka Routing, opcja No bicycle. Jeśli obok drogi z takim zakazem występuje ścieżka rowerowa lub chodnik, po którym wolno poruszać się rowerzystom, koniecznie go narysuj. Opcja domyślnie stosowana w wypadku autostrad i dróg 0x2.
Zakaz ruchu pieszych (no pedestrian)
RouteParam=0,0,0,0,0,0,0,0,0,1,0,0
Właściwości drogi, zakładka Routing, opcja No pedestrian. Opcja domyślnie stosowana w wypadku autostrad i dróg 0x2.
Zakaz ruchu karetek (no emergency)
RouteParam=0,0,0,0,1,0,0,0,0,0,0,0
Właściwości drogi, zakładka Routing, opcja No emergency.
Ten zakaz ustawiamy bardzo rzadko – karetka na sygnale ma prawo przejechać wszędzie. Może jednak mieć zastosowanie na drogach, na które wjazd jest zagrodzony szlabanami, gdzie występują nirozkładalne słupki itp., a także przy wyłączaniu odcinków dróg podczas remontów (gdy droga jest rozkopana i przejazdu nie ma tak czy inaczej).
Zakaz ruchu samochodów dostawczych/spedycji (no delivery)
RouteParam=0,0,0,0,0,1,0,0,0,0,0,0
Właściwości drogi, zakładka Routing, opcja No delivery.
Niezaznaczenie tego zakazu przy zaznaczeniu np. no car/motorcycle i no truck oznacza, że dozwolony jest wjazd samochodów dostarczających towary, kurierów etc. Czyli np. "Zakaz wjazdu dla pojazdów samochodowych" ale z tabliczką "nie dotyczy dostaw" ("w godzinach ...")
Zakaz ruchu busów (no bus)
RouteParam=0,0,0,0,0,0,0,1,0,0,0,0
Właściwości drogi, zakładka Routing, opcja No bus. Ustawiany wtedy, gdy na drodze występuje znak B-3a.
Zakaz ruchu taksówek (no taxi)
RouteParam=0,0,0,0,0,0,0,0,1,0,0,0
Właściwości drogi, zakładka Routing, opcja No taxi.
Zwykle występuje razem z no car/motorcycle, są jednak w miastach miejsca, gdzie mogą poruszać się taksówki, a "cywilne" pojazdy nie.
Znaki zakazu a parametry routingu
Oto próba odwzorowania niektórych znaku zakazu na zestaw opcji w ME++, przy założeniu, że pod znakiem nie ma dodatkowych warunków/wyjątków:
Znak | Nazwa | Jak? |
---|---|---|
B-1 | zakaz ruchu w obu kierunkach | no delivery + no car/motorcycle + no bus + no taxi + no bicycle + no truck. Dodatkowo można postawić POI typu "ZAKAZ", ale nie ma on znaczenia dla routingu, jedynie wspomaga nas wizualnie pokazując na mapie symbol zakazu wjazdu. Zakaz punktowy najczęściej stawiamy z dodatkowym opisem "szlaban" lub "słupki", w miejscach ich występowania. Przy szlabanach wjazdowych na drogi osiedlowe stosujemy wyłącznie POI z zakazem bez ustawiania restrykcji w RouteParam. |
B-2 | zakaz wjazdu | realizowane przez jednokierunkowość drogi, w którą nie można wjeżdżać |
B-3 | zakaz wjazdu pojazdów silnikowych, z wyjątkiem motocykli jednośladowych | Jak B-1, nie ma osobnej kategorii motocykli dla Garminów, ale dodatkowy wpis "Moto=yes" pozwoli na routing motocyklom na WWW. |
B-3a | zakaz wjazdu autobusów | no bus |
B-4 | zakaz wjazdu motocykli | brak kategorii tylko dla motocykli w Garminach. Ustawiamy jedynie "Moto=no" (bez RouteParam), aby router na WWW prowadził poprawnie |
B-5 | zakaz wjazdu samochodów ciężarowych | no truck |
B-9 | zakaz wjazdu rowerów | no bicycle |
B-41 | zakaz ruchu pieszych | no pedestrian |
tabliczki | wyłączenia z zakazów | np. "nie dotyczy autobusów" – realizujemy odhaczając odpowiednią kategorię z istniejącego zakazu. Jeśli wyjątek dotyczy motocykli, dopisujemy w Extras odpowiednio "Moto=yes" (jeśli motocyklom wolno) lub "Moto=no" (jeśli zakaz obejmuje motocykle). |
Zakazy skrętu
Opisane wcześniej zakazy to właściwości konkretnej drogi. Nieco inaczej tworzymy zakazy skrętu. W UMP-ie zakazy takie rysujemy specjalną linią (POLYLINE), obrazującą ścieżkę, jakiej nawigacji nie wolno wyznaczyć. Wykorzystujemy do tego osobny typ: 0x19. Ścieżka taka może zawierać 3 lub 4 punkty (po punktach routingu). Z reguły wystarczają 3 (przed skrzyżowaniem, na, za), w przypadku zakazów zawracania czasem konieczne są 4 (jeśli wolno skręcać w lewo, ale nie zawracać).
Typ: 0x19 Nazwa: Timeline
Jeśli więc z ulicy A nie wolno skręcić w ulicę B, rysujemy typem 0x19 polyline. Pierwszy węzeł tej linii musi pokrywać się z ostatnim węzłem ulicy A przed skrzyżowaniem z B (nazwijmy go X). Drugi węzeł (Y) to będzie samo skrzyżowanie A z B, trzeci (Z) – pierwszy węzeł na B już za tym skrzyżowaniem (oczywiście w tym kierunku, w którym nie wolno skręcić). Zakaz oznacza więc – "Z punktu X do punktu Z nie da się dojechać przez punkt pośredni Y". Przez węzły należy rozumieć węzły routingu (czyli skrzyżowania z innymi drogami, albo miejsca gdzie droga jest rozcięta, bo zmienia nazwę/kategorię), ale dopuszczalne jest też rozpoczęcie lub zakończenie zakazu bliżej (czyli np. przesunięcie węzła X w kierunku Y – tam, gdzie na drodze A jest zwykły punkt wynikający z odwzorowania kształtu drogi). To powoduje jednak powstawanie dodatkowych punktów routingu, których nie powinno się tworzyć bez potrzeby.
Jeśli jest nakaz jazdy w prawo, mimo że są ulice także na wprost i w lewo – trzeba narysować dwie linie zakazu (jedną prosto, drugą w lewo).
Dodatkowe informacje pod hasłem Restrykcje.
Uwaga: nie ma potrzeby rysować zakazów skrętu w drogi jednokierunkowe pod prąd – takiej trasy nawigacja i tak nie wyznaczy.
Uwaga2: Tak skonstruowany zakaz nie może mieć więcej niż 4 węzły. Możemy więc wyrysować coś bardziej skomplikowanego, jednak maksymalnie do tych 4 węzłów. Zakazy takie (4-punktowe) uwzględniane są w routingu map skompilowanych na Garminy, jendak nie potrafi z nich korzystać router na WWW ani kompilacje 7ways i niektóre inne, więc jeśli to możliwe, lepiej ich unikać. Nie zawsze się da, ale czasem wystarczy trochę pomyśleć. Przykładowo -- w sytuacji jak poniżej, można narysować 2 zakazy 4-punktowe, ale w zupełności wystarczą 3-punktowe, jak na prawym obrazku. Zakaz pokazany niebieską strzałką daje zakaz zawracania przy jeździe na południowy wschód (bo po skręcie w lewo nie da się kontynuować w prawo pod prąd), natomiast ten narysowany na czerwono pozwoli na skręt w lewo, ale nie na zawrócenie. W obu przypadkach warto jednak definicję zakazu uzupełnić opisem "Sign=ZAKAZ_ZAWRACANIA", w przeciwnym razie domyślnie zostanie tam umieszczony znak zakazu skrętu w lewo.
Jeśli jakiś zakaz nie dotyczy którejś kategorii pojazdów (najczęściej: autobusy komunikacji miejskiej), to należy dodać ręcznie następujący parametr linii Zakaz:
RestrParam=1,0,0,0,1,0,0,0
i wtedy skręcać będą mogły, według nawigacji, karetki i busy (uwaga: piesi ani rowery nie). Znaczenie poszczególnych parametrów to:
RestrParam=karetki,dostawcze,busy,samochód/moto,taxi,pieszy,rower,ciężarówka
czyli taka sama kolejność jak w RouteParam= (pomijając początkowe parametry klasy drogi itd.)
Prędkość
ForceSpeed=x (gdzie x to słowo "slower" lub "faster", ewentualnie wartość 0..6)
Każdy typ drogi ma przypisany indeks prędkości (zostały one wymienione w poprzednim rozdziale). Jest to wartość wykorzystywana przy obliczaniu czasu podróży tą drogą. W niektórych (niezbyt częstych) przypadkach, przydatne może okazać się przypisanie danej drodze innej prędkości – robimy to za pomocą tego parametru, dopisywanego w zakładce Extras właściwości drogi.
Przykładem takiego przypadku może być dojazd do miejscowości, do której prowadzą dwie drogi tej samej kategorii, np. dwie drogi gruntowe. Załóżmy, że rozpoczynają się i kończą w tych samych miejscach. Jedna z nich jest krótsza, ale wyboista i zimą nieodśnieżana, druga poprowadzona lekko naokoło, ale mniej stroma, zadbana i regularnie odśnieżana. Ponieważ obie to drogi gruntowe, w normalnych warunkach nawigacja poprowadzi trasę krótszą drogą – zarówno przy wyborze opcji trasy krótszej, jak i szybszej, ponieważ w przypadku dróg tej samej kategorii droga krótsza jest w oczywisty sposób szybsza.
Wcześniej modyfikacja parametru odbywała się przez sztywne podanie "nowej" prędkości. Od 2012 można jednak (i należy) podawać parametr slower lub faster dla oznaczenia czy dana droga ma mieć prędkość niższą czy wyższą od domyślnej.
W powyższym przykładzie z dwiema drogami modyfikacja parametrów "lepszej" drogi, przez ustawienie ForceSpeed=faster spowoduje, że dla nawigacji droga ta stanie się automatycznie drogą cztery razy szybszą (wartość domyślna dla drogi gruntowej to 0 – 5 km/h, wyższa 1 to 20 km/h). Przy wyborze opcji trasy najkrótszej trasa wciąż będzie prowadziła drogą, która jest fizycznie krótsza, jednakże wybór trasy szybszej spowoduje już, że zostaniemy poprowadzeni tą "lepszą" drogą.
Powyższe będzie zawsze prawdziwe dla dróg gruntowych. W przypadku dróg o typach 0x3 do 0x7 (other highway, arterial, residental, alleway) domyślne prędkości są modyfikowane dla dróg nazwanych, co zostało opisane wcześniej. Nie wpływa to na preferencję jednej drogi nad inną dopóki obie drogi są tego samego typu (i obie mają nazwy, lub obie nie), trzeba to natomiast wziąć pod uwagę przy rozwiązywaniu problemów tam, gdzie np. jedna alleway jest nazwana, a druga nie.
Innym dość typowym przykładem zastosowania ForceSpeed jest np. uliczka między blokami, którą routing skraca jakąś trasę, nawet pomimo tego iż ta uliczka to dajmy na to residential (0x6), a okoliczne collector (0x5) – po prostu skrót jest dość spory. Jeśli trasa nie powinna być tamtędy tyczona, powinniśmy ustawić na tym odcinku ForceSpeed=slower.
Innym, niezależnym parametrem dotyczącym prędkości jest parametr "Speed=". W ten sposób oznaczamy istniejące na drogach ograniczenia prędkości wprowadzane tam odpowiednimi znakami zakazu (np. Speed=70" -- ograniczenie do 70 km/h). Możemy w ten sposób oznaczać także ulice znajdujące się w strefach 30 itp. Parametr Speed= nie jest tłumaczony na żaden parametr routingu w odbiornikach Garmin (niektóre mapy potrafią pokazać go jako dodatkową informację, ale my jeszcze nie), natomiast jest uwzględniany i pokazywany na routingu WWW (na http://trasy.ump.waw.pl/ )
Droga | Prędkość (brak nazwy) | Prędkość (nazwana) | faster | slower |
---|---|---|---|---|
0x16 – walkway/trail (ścieżka/szlak) | 0 (5 km/h) | 0 (5 km/h) | 1 | 0 |
0x0a – unpaved road (droga gruntowa) | 0 (5 km/h) | 0 (5 km/h) | 1 | 0 |
0x07 – alleyway/private driveway (alejka/dojazd) | 1 (20 km/h) | 0 (5 km/h) | 2/1 | 0/0 |
0x06 – residential street (droga lokalna) | 2 (40 km/h) | 1 (20 km/h) | 3/2 | 1/0 |
0x05 – collector road (droga zbiorcza) | 3 (60 km/h) | 2 (40 km/h) | 4/3 | 2/1 |
0x04 – arterial road (arteria komunikacyjna) | 3 (60 km/h) | 2 (40 km/h) | 4/3 | 2/1 |
0x03 – other highway road (droga główna/krajowa) | 4 (80 km/h) | 3 (60 km/h) | 5/4 | 3/2 |
0x02 – principal highway (droga szybkiego ruchu/krajowa dwupasmówka) | 5 (90 km/h) | 5 (90 km/h) | 6 | 4 |
0x01 – major highway (autostrada) | 6 (110 km/h) | 6 (110 km/h) | 6 | 5 |
Kategoria (klasa)
ForceClass=x (gdzie x = 0..4)
Analogicznie do ustawienia prędkości na danej drodze, możemy zmienić jej indeks kategorii.
Ciągłość klas
Każda droga na mapie otrzymuje na etapie kompilacji określoną klasę (wartość od 0 do 4, gdzie 4 to droga najważniejsza). Garminy są bardzo wrażliwe na ciągłość tych klas, a brak ciągłości często skutkuje bardzo fantazyjnym wyznaczaniem tras. Większość typów dróg (0x1-0x7, 0xd) ma przypisaną klasę na stałe, a część obiektów (ronda, rampy, łączniki, tunele) ma ustalaną klasę automatycznie, w zależności od obiektów które łączą (dzięki temu nie musimy pamiętać aby rondom i rampom nadawać klasę). Aby zapewnić ciągłość klas musimy odpowiednio rysować wszelkie łączniki i serwisówki łączące ze sobą drogi. Ogólna zasada jest taka, że łącznik pomiędzy drogami (o ile nie jest rondem, rampą, łącznikiem czy tunelem) powinien być narysowany typem jednej z dróg, które łączy. Więcej informacji szukaj na innej stronie.
Zagadnienia
Remonty
Ogólna zasada – zaznaczamy remonty tylko dłuższe niż dwa tygodnie.
- rejestrujemy we Flyspray, kategoria Remonty
- w zgłoszeniu piszemy co zostało popsute (w szczególności pokasowane zakazy ruchu), żeby łatwiej było przywrócić układ po remoncie
- numer zgłoszenia wpisujemy w komentarzach zmienianych elementów mapy, żeby po zakończeniu remontu było łatwo odkręcić.
A na mapie:
- jeśli trzeba – wycinamy odcinek z dłuższego kawałka drogi
- odpinamy końce wyłączonego odcinka, ewentualnie wstawiamy ograniczenia pojazdów (zakładka Routing), w komentarzu wpisując numer zgłoszenia Flyspray. Jeżeli odpinamy odcinek jednokierunkowy, na czas odpięcia musimy zdjąć z niego jednokierunkowość (lub z innych jednokierunkowych, od których go odpięliśmy) i najlepiej zaznaczyć to w komentarzu (bo routing w odbiornikach nie lubi, jak się go zapędzi w miejsce bez wyjścia, czyli koniec jednokierunkowej drogi wiszący w próżni)
- kwestia dyskusyjna: odcinkowi zmieniamy typ na "w budowie" (0x10e13). W takim wypadku nie musimy jego końców odpinać od istniejących skrzyżowań.
- opcjonalnie: redukujemy widoczność na wyższych poziomach
- stawiamy punkt typu REMONT (żółta okrągła bojka typu 0x1712) z etykietą w stylu "FS#1234 remont taki-a-siaki do końca 12.2010" (widok na www będzie zamieniał FS# na link do konkretnego zgłoszenia FlySpray)
- punktów REMONT możemu używać zamiast bojek "ślepy" tam gdzie trzeba (np. na końcach pozostałych po odpięciu dróg, które nadal są przejezdne) – spełniają tę samą funkcję, maskując ostrzeżenia o ślepych, a po zakończeniu remontu nie będzie wątpliwości czy tam jest/była ślepa, tylko że trzeba sprawdzić, bo się mogło pozmieniać.
Komunikaty głosowe
Tutaj informacja, jak rysować żeby komunikaty głosowe był poprawne
Trzeci wymiar - 3D
czyli "po prostu" wiadukty, a nawet wielopoziomowe węzły.
Mapa w wersji www oraz w konwersji do Navitel jest w stanie pokazywać 'wysokościowe' zależności elementów, chociażby która droga idzie wiaduktem, a która dołem. W odbiorniku – tylko drogi, koleje nie, na WWW – zarówno drogi jak i koleje.
Jak?
-
nieużywaj mont-demont.bat lub mdm-gui z ptaszkiem "Specjalne traktowanie typów" (w ME++ – bez znaczenia) lub "make mont"/"make demont" (uniks lub Windows z cygwinem) - Jeśli używasz ME (nie ME++), po zmontowaniu mapy zmień typ (File – Map properties, pierwsza zakładka) z Garmin na Navitel (w ME++ działa i bez tego)
- każdemu węzłowi drogi w trybie Edycja można ustawić jego wysokość we względnej skali od -2 do 15 (w ME++ także węzłom kolejowym)
- nacisnąć M, dwuklik na którymś punkcie drogi albo prawy klik i "Properties", zakładka 3D, ptaszek przy Has 3D, wybrać wartość:
- "0" dla obiektów na poziomie gruntu – nie trzeba im tego deklarować jawnie, chyba że w tym miejscu określamy koniec/początek odcinka wysokościowego.
- "-2" dla tunelu, "-1" wykop lub stan pośredni. Jeśli tunel jest tunelem z prawdziwego zdarzenia (odpowiednio długi, z reguły z ograniczeniami prędkości, nazwą, itp.), to rysujemy go typem 0x0e, natomiast wszelkie przejazdy pod innymi drogami, nawet jeśli mają 100-200m, rysujemy takim typem, jak droga, w ciągu której się znajduje, obniżając tylko wysokość.
- "1" to rampa/nasyp, "2" to standardowy wiadukt lub most. Nie trzeba definiować wszystkich punktów po drodze, wystarczy np. jeden punkt 0 na początku, drugi niedaleko potem z wartością 2 przed przecięciem z drogą/obiektem, nad którym znajduje się most/wiadukt, kolejny z wartością 2 za tym obiektem i ostatni z wartością 0 za mostem (żeby się most nie ciągnął przez kolejne 3 kilometry). Jeśli most/wiadukt jest bardzo krótki (kilka(naście) metrów), można zamiast dwóch punktów o wysokości 2 postawić tylko jeden na środku, ale preferowana metoda zaznaczania to 2 punkty, żeby mieć pewność, że interpolowany punkt przejścia wysokości z 0 na 2 nie wypadnie na przykład gdzieś nad wodą :-)
- Jeśli w punkcie oznaczonym niezerową wysokością znajduje się skrzyżowanie (np. rampa odbijająca z wiaduktu) albo nawet tylko koniec jednej drogi i początek kolejnej (np. ze względu na zmianę nazwy), pamiętaj by w tym punkcie ustawić tę samą wysokość na wszystkich spotykających się tam drogach.
- jeśli masz wybrane "View – Show 3D", to możesz zobaczyć małe cyferki obok węzłów
- możesz kliknąć na obiekcie prawym klawiszem myszy, i wybrać "Show in 3D"
- po skończeniu jak zwykle: zamknij ME, zdemontuj, przejrzyj zmiany, skopiuj, jeszcze raz sprawdź, wyślij na serwer.
- w zmianach źródeł zobaczysz wpisy w stylu
HLevel0=(4,1),(5,1)
- w wersji www będziesz mógł później podziwiać efekty takie, jak np. w Warszawie koło ZUS.
Typy dróg – rozszerzenia
Opisane w pierwszym rozdziale typy dróg to podstawa, na której bazuje budowa mapy i protokół routingu. Nie są to jednak wszystkie możliwe typy. Poniżej przedstawione zostały typy opisujące inne mogące wystąpić na mapie polyline:
0x0d – ścieżka rowerowa
0x0e – tunel
0x0f – droga gruntowa typu 4x4
Droga gruntowa przez pole lub w lesie wymagająca napędu na 4 koła (4x4): 0x0f – gruntowa 4x4
0x14 – kolej
Kolej (w źródłach zmieniana potem na 0x10e14, ale na mapie rysowana 0x14)
0x010e10 – tramwaj
Typ: 0x010e10
Tak oznaczamy linię tramwajową. W nazwie zawieramy informację o numerach linii, w sposób następujący: 4-5-9-10-15-40.
0x010e11 – ulica planowana (w mieście i na wsi)
Typ: 0x010e11
W ten sposób oznaczamy przebieg planowanych/budowanych ulic (miasto/wieś). W planach lub wczesnym stadium realizacji, gdzie przebieg może być przybliżony.
0x010e12 – droga planowana
Typ: 0x010e12
W ten sposób oznaczamy przebieg planowanych/budowanych dróg. W planach lub wczesnym stadium realizacji, gdzie przebieg może być przybliżony.
0x010e13 – droga w budowie
Typ: 0x010e13
W ten sposób oznaczamy drogi w budowie -- w zaawansowanym stadium budowy, gdzie przebieg już nie jest przybliżony (choć może się zdarzyć, że innego źródła nie mamy i musi), albo (najlepiej) - pochodzi z jakiegoś śladu, choćby przejazdu rowerem po zamkniętym jeszcze odcinku. Typ należy traktować tak, jak by był routowalny, więc w miarę możliwości ustawiać wysokość wiaduktom, stawiać bojki SLEPY/WIADUKT itp., żeby otwarcie odcinka było bezproblemowe i wymagało jedynie zmiany typu na odpowiedni. Tym typem można też oznaczać drogi w przebudowie/remonty (o ile to gruntowna przebudowa i nie wystarczy "zwykłe" zaznaczenie zakazów wjazdu).
0x010e15 – kolej podziemna
Typ: 0x010e15
Tym typem opisujemy kolej podziemną (ewentualnie także rozebrany przez złomiarzy lub kolejarzy odcinek kolejowy)
0x010e16 – kolejka linowa
Kolejka linowa - krzesełkowa lub gondolowa.
0x010e17 – Wyciąg narciarski
Wyciąg narciarski - orczyk itp.
Szlaki rowerowe
0x10e08 szlak rowerowy czerwony
0x10e09 szlak rowerowy żółty
0x10e0a szlak rowerowy zielony
0x10e0b szlak rowerowy niebieski
0x10e0c szlak rowerowy czarny
Szlaki piesze
Poniższe oznaczenia stosujemy do rysowania szlaków PTTK-owskich, miejskich itp., których kolor jest jednoznacznie określony.
0x10e00 szlak pieszy czerwony
0x10e01 szlak pieszy żółty
0x10e02 szlak pieszy zielony
0x10e03 szlak pieszy niebieski
0x10e04 szlak pieszy czarny
0x10e07 (multicolor) kilka nałożonych szlaków pieszych
0x010e1a – wał przeciwpowodziowy
0x010e1b – mury obronne
0x010e0f – inne
Szlak konny, ścieżka dydaktyczna i inne nietypowe. Oczywiście z odpowiednią nazwą, opisującą odpowiednio taką drogę.