highway=* & maxweight:forward<7.5 { set oneway=yes; set toll=yes; set hgv=no } [0x04 road_speed=4 road_class=2 continue]
highway=* & maxweight:backward<7.5 { set oneway=-1; set toll=yes; set hgv=no } [0x04 road_speed=4 road_class=2 continue]
Soweit ich Win32netsky verstanden habe, geht es um seine selbst erstellte Garmin-Karten für den Spezialfall LKW-Routing. Falls dein Hinweis das Problem nicht lösen kann, ist das Aufteilen in zwei Richtungsfahrbahnen (nur in der Garmin Karte) sicher unschön, aber zumindest eine Lösung.
Ich habe immer noch auf der Straße maxweight:forward und backward drin in OSM
Das mit den 2 Straßen übereinander geht einwandfrei (Das wertet Mkgmap auch super aus / Bilder im WIKI OSM Transport Karte)
Nur leider wird das als OSM-Bug angezeigt.
In der Theorie ist es ja sogar richtig da es ja zwar eine Straße ist aber 2 verschiedene Beschränkungen hat für jede Fahrbahn.
Wie wäre die Einbahnstraßen dicht nebeneinander zu legen? (So zusagen auf die Straßenhälfte)
Morgen Test mit :
highway=* & maxweight:forward<7.5 { set oneway=yes; set toll=yes; set hgv=no } [0x04 road_speed=4 road_class=2 continue]
highway=* & maxweight:backward<7.5 { set oneway=-1; set toll=yes; set hgv=no } [0x04 road_speed=4 road_class=2]
Nein eine Lösung ist das nicht wirklich.
(Es wird ja nicht überall so eingetragen, das maxweigth forward und backward ist die Wahl / leider geht das noch nicht )
Und wenn das geht kann ich die hazmat:forward und backward auch so machen.
Wie ist es denn wenn jemand eine Straße anders rum sperrt ? Dann in der ersten Zeile conitue entfernen? Oder beide continue raus?
Angenommen das Ziel liegt in einer dieser fiktiven Einbahnstraßen. Wie soll ein Navi ermitteln, dass man in Wirklichkeit von beiden Seiten da hin fahren darf, wenn man nicht gerade Gefahrgut transportiert?
In der Regel hören die bei der ersten gefundenen Straße auf zu suchen und das wäre dann eine dieser Einbahnspuren.
highway=* & maxweight:forward<7.5 { set oneway=yes; set toll=yes; set hgv=no } [0x04 road_speed=4 road_class=2 continue]
highway=* & maxweight:backward<7.5 { set oneway=-1; set toll=yes; set hgv=no } [0x04 road_speed=4 road_class=2]
Ist zwar lange her, dass ich selbst Garminkarten erstellt habe, aber mir scheint die Logik noch nicht so ganz richtig (bzw. nur für den nachfolgenden Fall 1 geeignet).
Fall 1: Straßen, die sowohl maxweight:forward als auch ein (vermutlich i.d.R. abweichendes) maxspeed:backward haben
Fall 2: Straßen mit maxspeed:forward, maxspeed:backward nicht gesetzt
Fall 3: Straßen mit maxspeed:backward, maxspeed:forward nicht gesetzt
M.E. ist es am übersichtlichen, diese 3 Fälle einzeln zu behandeln, wobei jeweils die letzte Regel kein continue haben darf, sonst würden nachfolgende allgemeine highway=*-Regeln noch einmal darauf angewandt.
highway=* & maxweight:forward<7.5 & maxweight:backward<7.5 { set toll=yes; set hgv=no } [0x04 road_speed=4 road_class=2]
highway=* & maxweight:forward<7.5 { set oneway=yes; set toll=yes; set hgv=no } [0x04 road_speed=4 road_class=2 continue]
highway=* & maxweight:forward<7.5 { set oneway=-1 } [0x04 road_speed=4 road_class=2]
highway=* & maxweight:backward<7.5 { set oneway=-1; set toll=yes; set hgv=no } [0x04 road_speed=4 road_class=2 continue]
highway=* & maxweight:backward<7.5 { set oneway=yes } [0x04 road_speed=4 road_class=2]
(road_speed=4 road_class=2 habe ich unverändert aus deinen Beispielen übernommen, müssen ggf. angepasst werden)
Übrigens, ist tatsächlich <7.5 gemeint und nicht <=7.5?
Und könntest du auf deiner Wikiseite die Aufforderung entfernen, anstatt einer Straße mit maxspeed:forward/backward zwei Straßen übereinander einzutragen?
Danke für den Vorschlag ich werde das so mal testen
"
Und könntest du auf deiner Wikiseite die Aufforderung entfernen, anstatt einer Straße mit maxspeed:forward/backward zwei Straßen übereinander einzutragen?
"
Hatte ich das nicht schon ? Wo ich hab was übersehen
Beste Grüße
Wenn man jetzt lanes=2 auf einer normalen Straße hat, in eine Richtung jeweils eine Spur. Die Fahrrichtung ist in eine Richtung für Lkw gesperrt aber nicht in der Gegenrichtung.
Ja, falls Du mkgmap erneuert hast. Ab r2906 müssen die access-Tags anders vergeben werden. Konsequenterweise werden die Steuer-Tags jetzt alle mkgmap:* genannt, in diesem Fall musst Du
set mkgmap:truck=no
benutzen. Siehe auch das Style-Manual. Leider nur in Englisch.
Das wichtigste: access funktioniert nicht mehr, dafür gibt es dann die Funktion z.B. { setaccess ‘yes’ }.
Stimmt so nicht ganz. Man sollte die “access” aus dem inc-Verzeichnis einbinden, die die Übernahme der Access-Tags in die internen Tags übernimmt. Setzt man die Tags in “lines” nach der gewohnten Methode, ändert sich quasi nichts. Setzt man die internen Tags aber selbst, hat man Probleme, wenn man die access-Datei später mal einbinden möchte. Dann werden alle internen Tags nochmals mit den Tags aus der OSM-Datei überschrieben und die selbst gesetzten Tags (“mkgmap:xxx=”) gehen verloren. Wichtig ist also, das geeignete Konzept zu planen und dann beizubehalten. Ich persönlich bevorzuge die neue Methode, weil sich alle access-Dinge übersichtlich in die neue Datei auslagern lassen.
Und folgendes: Die Regeln, die Straßen wieder zulässig machen, sollten an den Anfang. Beispiel: Due hast eine Straße mit hgv=no; maxheight=none. Deine Regel am Schluss erlaubt die Straße wieder - das sollte nicht passieren.
Du kannst das abfangen mit
highway=* & maxheight=none & mkgmap:truck!=* { set mkgmap:truck=yes }