Brouter do routingu pieszego i rowerowego

Nie, to tak nie działa. Ponieważ przypadkowo jestem współautorem podręcznika do prawa autorskiego, to polecam lekturę :slight_smile:
http://prawokultury.pl/publikacje/pierwsza-pomoc/

Kodeks Drogowy mówi “Kierujący rowerem jest obowiązany korzystać z drogi dla rowerów lub pasa ruchu dla rowerów, jeśli są one wyznaczone dla kierunku, w którym się porusza”. Ja bym to rozumiał w ten sposób, że jeśli droga dla rowerów jest dwukierunkowa to trzeba z niej korzystać niezależnie od tego, po której jest stronie. Czyli w przypadku Reymonta w obu kierunkach należałoby jechać po ddr. Podobnie to interpretują na http://wrower.pl/prawo/obowiazek-jazdy-po-drodze-dla-rowerow,3004.html (prawy obrazek, dwukierunkowy pas dla rowerów). Ale spierać się nie będę bo sam jestem taki mądry dopiero od wczoraj :wink:

@Rekrutacja: dzięki za link do podręcznika, będę to czytał na pewno

To jest pisane z “perspektywy jezdni po której poruszają się auta” - i jej własnie kierunkowości. W końcu zamierzeniem jest aby rower opuścił daną jezdnię w kierunku w którym się porusza.

Z tą interpretacją też się spotkałem. Tyle że nie ma ona już żadnego sensu, w wielu przypadkach wymaga ona od rowerzystów zdolności do teleportacji - nawet przy sensownej infrastrukturze. Rozmawiałem z prawnikiem który grzebał w sprawach rowerowych - według niego znaczenie “kierunek w którym się porusza” nie jest nigdzie zdefiniowane, oznacza to iż obowiązuje definicja z Konwencji wiedeńskej o ruchu drogowym.

Oczywiście łatwo znaleźć prawnika który ma inną opinie a policjanci będą się głównie kierowali tym czy wyrobili normę mandatów w danym miesiącu :frowning:

Problem polega na totalnym bajzlu prawnym - na przykładzie pasów rowerowych: http://www.miastadlarowerow.pl/index_know_how.php?dzial=2&kat=8&art=4 (trwają własnie prace nad jakimiś poprawkami do rozporządzeń, podobno ma być lepiej).

z http://www.unece.org/fileadmin/DAM/trans/conventn/crt1968e.pdf linkowanego w http://pl.wikipedia.org/wiki/Konwencja_wiede%C5%84ska_o_ruchu_drogowym

Podpowiem, że to jest błędna interpretacja :slight_smile:
Poruszającego się dowolnym pojazdem drogą obowiązują tylko i wyłącznie znaki umieszczone po prawej stronie ( oraz niektóre powtarzane nad pasami) z czego wynika, że w przypadku DDR czy DDRiP po lewej stronie ( nawet dwukierunkowej) wszelkie znaki tam umieszczone nie odnoszą się do rowerzysty poruszającego się po drugiej stronie jezdnią.
Przytoczę tu najlepszy opis i wyjaśnienie tego zagadnienia:

Mateuszu, strona, którą przytoczyłeś jest mocno nieaktualna. Podaje stan z 2010 roku. Kodeks drogowy jest ciągle zmieniany. “Doczekaliśmy się” definicji drogi dla rowerów oraz pasa ruchu dla rowerów. W ten “cudowny” sposób jednym podpisem prezydenta część dwukierunkowych dróg rowerowych stała się jednokierunkowymi pasami ruch dla rowerów. I wygląda na to, że przejmują się tym tylko tacy społecznicy jak my. Zarządy dróg, policja i inne “odpowiedzialne” osoby mają to w (dobrze wiecie gdzie). Przykład: finał akcji “Możesz przechodzić przez jezdnię na kórnickiej”. Wprawdzie dotyczy to ruchu pieszych ale opisuje podobne zjawisko.

Tak więc na 100% pewni tego, że w danym miejscu można/nie wolno/należy/itd. jechać rowerem możemy być tylko trzymając w ręku prawomocny wyrok stosownego sądu.
No dobra nie na 100%.

Pozdrawiam

Grzegorz

PS. Znak P-23 wskazuje tylko, że dana część drogi przeznaczona jest dla rowerów, ale nie określa kierunku ruchu.

Czesc

Super profil z pierwszego postu :wink: korzystam w okolicach legnicy i swietna zabawa z tego wychodzi. Pytanie tylko jedno. Jak zrobic zeby wszystko bylo jak jest ale priorytet na najkrotsza trase. teraz potrafi mi wyznaczyc duzo dluzsza droge byle by nie po ulicy. ale czasem jednak wole przejechac/przejsc 1km po asfalcie niz 3 razy dluzej przez ciekawsze drogi.

dzieki

Wypróbuj oryginalne profile rowerowe broutera, w szczególności trekking lub fastbike.

dzieki. Cos mi te oryginaly nie pasowaly ale potestuje ponownie pod tym kątem… zobaczymy :wink:

Czemu tak mało dyskusji w takim temacie? Gdyby ktoś nie wspomniał gdzieś o Brouter to chyba nigdy nie udało by mi się go znaleźć. A właśnie czegoś tak fajnego pod rower szukałem. No więc potrzebny mi taki profil uśredniony na rower, który będzie jednocześnie wyznaczał jak najkrótszą trasę, jednocześnie omijał to co trzeba ale również przejedzie drogi o gorszej nawierzchni. Czyli coś mniej więcej pod rower trekkingowy. Dlatego że lubię jeździć często rowerem po różnych trasach z daleka od domu i zawsze uruchamiam wcześniej nawigację taki profilek bardzo by mi się przydał. Zamierzam również uzupełniać drogi o odpowiednie parametry jak surface, smoothnees itd. w swoich okolicach.
A żaden ze znalezionych i sprawdzanych profili nie wyznacza idealnie tras i nie bierze pod uwagę wszystkiego co bym chciał.

Prośba o utworzenie profilu z myślą o rowerze który:

  • Omija zawsze bezwzględnie promy (niezależnie jak bardzo to wydłuży trasę)
  • Omija zawsze bezwzględnie drogi w budowie i planowane (niezależnie jak bardzo to wydłuży trasę)
  • Omija zawsze bezwzględnie autostrady i drogi ekspresowe (itp. drogi po których nie można jeździć rowerem wedle prawa) (niezależnie jak bardzo to wydłuży trasę)
  • Omija bezwzględnie zawsze drogi poniżej (tracktype=grade 4) (czyli omija zawsze tracktype=grade 5) (niezależnie jak bardzo to wydłuży trasę)
  • Omija bezwzględnie zawsze drogi z surface=grass (trawa) lub mud (błoto) lub sand (piasek) (niezależnie jak bardzo to wydłuży trasę)
  • Omija bezwzględnie zawsze drogi w których lub na których jest tag (ford=yes)(Bród) (niezależnie jak bardzo to wydłuży trasę)
  • Omija bezwzględnie zawsze drogi w których jest tag poniżej (smoothness=bad). A więc omija drogi (smoothness=very_bad) (smoothness=horrible) (smoothness=very_horrible) (smoothness=impassable)
    (niezależnie jak bardzo to wydłuży trasę)
  • Zawsze prowadzi po (highway=cycleway), jeżeli w pobliżu trasy biegnie taka ścieżka
  • Omija ścieżki (highway=patch) i wybiera (higway=track). Chyba że ominięcie takiej ścieżki wydłuży bardzo trasę (np. o 2 km) (Taki scenariusz gdzie występuje dużo patch i track występuje głównie w lasach, patch z racji tego że są mniej szerokie niż track (a przynajmniej tak powinno to wyglądać jeśli jest dobrze mapowane) to takie wyznaczanie jak dla mnie będzie bezpieczniejsze.
  • Nie omija schodów (highway=steps) (chyba że maksymalnie 50 metrów obok istnieje normalny przejazd bez schodów)
  • Pozwala jechać po chodniku (highway=footway) (Ale tylko w wyznaczonych zasadach jak na tej stronie: http://wrower.pl/prawo/jazda-rowerem-po-chodniku,2032.html
  • Wyznacza jak najkrótszą trasę
  • Bierze pod uwagę restrykcje drogowe takie jak droga jednokierunkowa (czyli wszystkie które według prawa musi przestrzegać również rowerzysta)
  • Nie pozwala bezwzględnie nigdy jechać gdy są takie tagi: bicycle=no, acces=no, acces=private w jakiejkolwiek drodze, przeszkodzie, bramie itd. (niezależnie jak bardzo to wydłuży trasę)
  • Pozwala jechać gdy jest bicycle=yes, permissive lub designated
  • Omija bezwzględnie zawsze drogi w których lub na których jest tag poniżej (mtb:scale=1) czyli pomija (mtb:scale=2) (mtb:scale=3) (mtb:scale=4) (mtb:scale=4) (mtb:scale=6) (niezależnie jak bardzo to wydłuży trasę)
  • Wybiera ogólne zasady: prowadzić po lepszej drodze (wyższej w hierarchii lub lepszą nawierzchnią lub typem drogi) jeżeli prowadzenie po lepszej drodze niż gorszej będzie w danym wypadku ekonomiczniejsze)

Może wystarczy tylko odpowiednio zmodyfikować znaleziony prze zemnie profil.
Jest to profil dla roweru trekkingowego stworzony przez pewnego użytkownika (na trasy gdy jest sucho)
Z tego co widać w jego changelogu to był często poprawiany zanim został oznaczony jako finalna wersja:
https://raw.githubusercontent.com/poutnikl/Brouter-profiles/master/Trekking-Dry.brf
Niestety nie wiem czemu ten profil np. nie omija dróg które mają bicycle=no. I pewnie inne błędy się w nim też znajdą.
Dlatego że nie wiem jak go zmodyfikować aby uzyskać efekt pożądany to prośba do kogoś kto się orientuje.

Na koniec jeszcze pytanie czy brouter uwzględnia wyznaczanie przez punkty VIA (pośrednie). Ponieważ sprawdzałem wyznaczanie tras w OsmAnd (brouter wybrany jako domyślny algorytm wyznaczania) i OsmAnd nie uwzględnia punktów pośrednich (VIA) gdy używamy go z Brouter :(. A więc można wyznaczać tylko punkt startowy i docelowy. Czyżby OsmAnd nie współpracował w pełni z Brouter?

Ja korzystam z broutera w Locusie (da się to podpiąć) i tam można dodawać punktu pośrednie (ale takich dokładnych ustawień tam nie ma.

@Geoinformatyczek:
Proponuję wypróbować profile dostępne na: https://github.com/poutnikl/Brouter-profiles/wiki/Bicycle-Trekking-profiles
Każdy z profili na w nagłówku sekcję konfiguracji więc możesz go w łatwy sposób podkręcić, w zakresie przewidzianym przez autora. Najwygodniej wypróbować dany profil online, wklejając go w lewym dolnym rogu: http://brouter.de/brouter-web/
Wybierasz znaną Ci okolicę i sprawdzasz wyliczoną drogę.

@ndmystko wiem o tych profilach dlatego wcześniej dałem link do jednego z nich, aby nie tracić czasu na tworzenie od początku własnego profilu i aby ktoś mógł go zmodyfikować tak aby pasował do każdej z zasad które wypisałem. Dlatego że żaden z tych profili w oryginale nie spełnia wszystkich zasad które chcę (ale nie wiele mu brakuje do tego) i nikt się nie podjął modyfikacji to postanowiłem samemu spróbować. Metodą prób i błędów udało mi się w końcu znaleźć linijki które odpowiadają za ustawienia które mnie interesują. W profilu zmieniłem i dodałem kilka rzeczy brakujących, aby był jeszcze lepszy. Jedyne czego nie wiem to jaki kod dodać w profilu, aby umożliwiał on omijanie w wyznaczaniu tras tagów ford=yes (Bród). Więc aby przez takie miejsca nie prowadził. Gdyby ktoś mógł napisać jak to zrobić :slight_smile: A więc oprócz tej jednej rzeczy mam w tej chwili prawie idealny profil na rower który można sobie dostosowywać w miarę potrzeb (brakuje tej jednej rzeczy) i zamierzam go jeszcze udoskonalać pod inne typy jazdy (np. jazda dzienna, nocna, itp) oraz dodać informacje obok danych funkcji po polsku co zmienia dana funkcja itp. po czym udostępnić te profile, aby były dostępne dla każdego. Jeśli mamy swoją okolicę odpowiednio naniesioną na mapach to brouter i jego wyznaczanie tras to jest coś niesamowitego, ale zwykły użytkownik nie będzie umiał tak modyfikować profili.

Proponuję zduplikować istniejącą, podobną funkcjonalność. Obsługa schodów wydaje się dobrym kandydatem. Poniżej linijki:
assign allow_steps 1 # 1 as default
dodałbym:
assign allow_fords 0 # 0 as default
a poniżej:

  • switch highway=steps switch allow_steps 40 100000*
    dodałbym:
  • switch ford=yes switch allow_fords 40 100000*

W ten sposób masz kontrolę czy można przekraczać brody.

A więc dodanie takich linijek faktycznie skutkuje omijaniem dróg z ford=yes. Ale niestety tylko wtedy, gdy tag: ford=yes jest dodany jako odcinek wzdłuż szerokości danej rzeki.
Tak jak widać na poniższym screenie (Przerywana niebieska linia to odcinek z umieszczonym w nim tagiem ford=yes)

Gdy oznaczony jest sam tag na przecięciu drogi i rzeki wtedy bród nie jest omijany, a czasem zdarzają się takie tagowania. Tak jak na tym obrazku:

Według opisu na wiki brody powinno się tagować podobnie jak mosty a więc odcinek idący “po wodzie” powinien mieć tag highway= oraz ford=yes. Czyli tak jak na pierwszym screenie z tym że te odcinki (drogi i rzeki) powinny być połączone węzłem w miejscu przecinania się. Więc nawet na pierwszym screenie istnieje błąd chociaż samo miejsce brodu (pomijając rzekę) naniesiono odpowiednio i powiedzmy że dokładnie.

https://wiki.openstreetmap.org/wiki/Pl:Key:ford

A zaznaczać można tagiem ford=yes w miejscu przecięcia się drogi ze strumieniem/rzeką (screen 2) gdy nie mamy informacji na temat brodu a więc np. widocznej na podkładzie szerokości rzeki/strumienia. Pomijając to, że bród na screenie drugim może okazać się w rzeczywistości możliwy do przebycia tylko czołgiem.

Ponieważ zazwyczaj widać na podkładzie szerokość rzeki/strumienia to lepiej trzymać się zasady ze screenu 1. Jak sprawdziłem nawet za granicą są takie miejsca jak ze screenu 2. Dlatego wolałbym mieć pewny kod który ominie zarówno zasadę z pierwszego screena i drugiego. Więc jeśli by się dało dodać taki kod który umożliwił by omijanie również skrzyżowań dróg i rzek na których jest tag ford=yes (Screen 2) to mógłby udostępnić linijki kodu jakie dodać. Tak czy inaczej posprawdzam wszystkie miejsca w Polsce z tagiem ford=yes i ewentualnie zmienię co będzie trzeba. Wolę mieć jednak routing uwzględniający jak najwięcej rzeczy i pewność że nie wjadę w rzekę rowerem, której nie ma szans do przejechania i tracić z tego tytułu czas. Choć obok brodu często znajduje się prowizoryczny mostek dla pieszych, którym można również przeprowadzić rower, ale to już oddzielna rzecz którą również odpowiednio trzeba nanosić na mapę.

Tak czy inaczej dzięki wielkie za kod, bo omijanie takich miejsc jak bród jest bardzo istotne podczas jazdy normalnymi pojazdami :wink: Dziwne że nie zostało dodane w oryginalnych profilach.

assign defaultaccess =
if ( ford=yes ) then false
else
if ( access= ) then true # add default barrier restrictions here!
else if ( access=private|no ) then false
else true

Kursywą zaznaczyłem dodany fragment. Przetestowałem tutaj:
http://www.openstreetmap.org/#map=18/49.47192/21.37777

A swoją drogą to bardzo zabawny przypadek. Tydzień temu byłem w Beskidzie Niskim i z przyjemnością ćwiczyłem forsowanie brodów na Wisłoce, rowerem. Kilkanaście razy w 2,5h :slight_smile:

Brakuje mi rozwiązania dwóch problemów dotyczących BRouter, aby mieć idealny routing:

  1. Aby OsmAnd używając BRouter wyznaczał trasy również biorąc pod uwagę punkty pośrednie(VIA). Ponieważ to nie działa i z tego co czytałem na zagranicznym forum jest to wina OsmAnd. (Programy typu Locus nie spełniają moich wymagań)
  2. Dzięki kodom podanym przez ndmystko uzupełniłem profil rowerowy o odpowiednie linijki i teraz mam idealny profilek pod jazdę w każdym miejscu :wink: Głównie o rowerowy mi chodziło, ale brakuje mi jeszcze dodania tej samej funkcjonalności (omijania brodów w dwóch sytuacjach występujących w terenie jak na screenach wyżej) do profilu samochodowego i pieszego (Może mi się to przydać w przyszłości). A więc jakie linijki kodu dodać i w których miejscach do niżej wymienionych profili, aby omijały one brody, ponieważ trzeba dodać jednak inne niż te w rowerowym profilu.
    Samochód: https://github.com/poutnikl/Car-Profile/blob/master/Car-test-Template.brf
    Pieszy: https://raw.githubusercontent.com/poutnikl/Brouter-profiles/master/Hiking.brf

Zgadza się, ale obsługuje punktu nogo dodane w OsmAnd.
A jak to nie odpowiada, to brouter obsługuje punkty pośrednie, ale w tym celu musisz ręcznie uruchomić brouter i w nim wybierać punkty from, via i to.

I tak uzyskana trasa gpx pojawi się w Osmand jako brouter0. Sprawdzone.

Jeszcze żebym wiedział jak to zrobić :wink: przydała by się mała instrukcja