update vm-forum profiles

use the brouter-web options for profile adjustment
This commit is contained in:
vodie 2020-06-21 23:01:26 +02:00 committed by GitHub
parent 8159eaf024
commit 74b1f1308d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 920 additions and 882 deletions

View file

@ -1,441 +1,460 @@
# #
# Profile for fast recumbent bikes, contributed by http://www.velomobilforum.de # Profile for fast recumbent bikes, contributed by http://www.velomobilforum.de
---context:global ---context:global
assign totalMass = 90 #Gesamtmasse des Fahrzeugs (Fahrzeug, Fahrer, Gepäck...) in kg assign no_steps = false # %no_steps% | keine Stufen, das Liegerad soll nicht getragen werden müssen | boolean
assign maxSpeed = 60 #Maximale Geschwindigkeit ab der der Fahrer bremst in km/h assign no_wrong_oneway = false # %no_wrong oneway% | keine Einbahnstrasse in falsche Richtung, auch nicht schiebend | boolean
assign S_C_x = 0.23 #Effektive Stirnfläche in m²
assign C_r = 0.004 #Rollwiderstand assign dismount_cost = 1000 # %dismount_cost% | Umweg in Meter der in Kauf genommen wird bevor eine Strecke genommen wird bei der man austeigen muss, ab 1 000 000 wird keine Schiebestrecke mehr genommen | number
assign bikerPower = 125 #Dauerleistung in Watt assign avoid_main_roads = 5 # %avoid_main_roads% | große Straße vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 3 = Standard, 10 = stark vermeiden | number
assign avoid_small_roads = 5 # %avoid_small_roads% | kleine Straße vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 5 = Standard, 10 = stark vermeiden | number
assign ignore_bicycle_no = false # für Regionen mit falschen bicyle=no tags können sie mit "true" ignoriert werden. Auch Shuttletransporte (bicycle=dismount + foot=no) werden geroutet assign avoid_cycleways = 3 # %avoid_cycleways% | Radwege vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 3 = Standard, 10 = stark vermeiden | number
assign consider_smoothness_tags = true # mit false kann die kanne die Auswertung der smoothness tags abgeschaltet werden assign avoid_elevation = 5 # %avoid_elevation% | Hohenmeter vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 5 = Standard, 10 = stark vermeiden | number
assign low_memory_cutoff = false # mit true werden Wege mit hohen Kosten aus der Berechnung genommen und damit wird die Berechnung schneller und benötigt weniger Arbeitspeicher. assign avoid_bad_ways = 8 # %avoid_bad_ways% | Schlechte Wege vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 8 = Standard, 10 = stark vermeiden | number
assign turnInstructionMode 1 #Ausgabe von Abiegehinweise 0=keine, 1=automatische Wahl, 2=locus-Style, 3=osmand-Style assign totalMass = 90 # %totalMass% | Gesamtmasse des Fahrzeugs (Fahrzeug, Fahrer, Gepäck...) in kg, für Fahrtzeitschätzung | number
assign turnInstructionCatchingRange 20 # innerhalb dieser Strecke werden mehrere Abiegehinweise zu einem zusammengefasst und die Abiegewinkel werden besser an die generelle Richtung angenähert assign maxSpeed = 60 # Maximale Geschwindigkeit ab der der Fahrer bremst in km/h
assign turnInstructionRoundabouts true # mit "false" werden keine speziellen Abiegehinweise für den Kreisverkehr generiert assign S_C_x = 0.23 # Effektive Stirnfläche in m²
assign C_r = 0.004 # Rollwiderstand
assign downhillcost 80 # Kosten für die Höhenmeter bergab assign bikerPower = 125 # %bikerPower% | Dauerleistung in Watt, für Fahrtzeitschätzung| number
assign downhillcutoff 0.1 # Gefälle unter diesem Wert in Prozent werden nicht gewertet
assign uphillcost 80 # Kosten für die Höhenmeter bergauf
assign uphillcutoff 1 # Steigungen unter diesem Wert in Prozent werden nicht gewertet assign ignore_bicycle_no = false # %ignore_bicycle_no% | für Regionen mit falschen bicyle=no tags können sie mit "true" ignoriert werden. Auch Shuttletransporte (bicycle=dismount + foot=no) werden geroutet | boolean
assign validForBikes true # bei true werden die Außnahmen bei den Abbiegebeschränkungen für Fahrräder aktiviert
assign considerTurnRestrictions true # bei false werden die Abbiegebeschränkungen ignoriert assign turnInstructionMode = 1 # %turnInstructionMode% | Modus für die Abbiegehinweise | [0=keine, 1=automatische Wahl, 2=locus-Style, 3=osmand-Style, 4=comment-Style, 5=gpsies-Style, 6=orux-Style]
assign turnInstructionCatchingRange 20 # innerhalb dieser Strecke werden mehrere Abiegehinweise zu einem zusammengefasst und die Abiegewinkel werden besser an die generelle Richtung angenähert
assign pass1coefficient 2.5 # Berechnugskoeffizient für erste schnelle Berechnung assign turnInstructionRoundabouts true # mit "false" werden keine speziellen Abiegehinweise für den Kreisverkehr generiert
assign pass2coefficient 0 # Berechnugskoeffizient für zweite exakte Berechnung
# sinnvolle Werte für den ersten Koeffizienten: assign avoidmr2 multiply 0.04 multiply avoid_main_roads avoid_main_roads
# 1 exakte Berechnung beim ersten Durchlauf assign avoidsr multiply 0.2 avoid_small_roads
# umso größer die Werte umso schneller und ungenauer die erste Berechnung assign avoidbw multiply 0.125 avoid_bad_ways
# sinnvolle Werte für den zweiten Koeffizienten: assign avoid_ele multiply avoid_elevation 0.2
# 0 exakte Berechnung mit Beschränkung des Suchgebiets über die Kosten der ersten Berechnung
# -1 keine zweite Berechnung, nur sinnvoll bei 1 im ersten Durchlauf assign downhillcost multiply avoid_ele 80 # Kosten für die Höhenmeter bergab
assign downhillcutoff 0.1 # Gefälle unter diesem Wert in Prozent werden nicht gewertet
# Um die ungenauen SRTM Höhendaten zu filtern werden für jeweils für Anstiege und Gefälle Puffer verwendet. Erst wenn diese überschritten werden die Segmente als Anstiege oder Gefälle gewertet. assign uphillcost multiply avoid_ele 80 # Kosten für die Höhenmeter bergauf
assign uphillcutoff 1 # Steigungen unter diesem Wert in Prozent werden nicht gewertet
assign elevationpenaltybuffer 7 # Höhenpuffer (in Meter) ab dem die Höhenstrafen beginnen und das Segment als Anstieg und Gefälle gewertet wird
assign elevationmaxbuffer 13 # Maximale Puffergröße (in Meter), alles darüberhinausgehende wird voll bestraft assign validForBikes true # bei true werden die Außnahmen bei den Abbiegebeschränkungen für Fahrräder aktiviert
assign elevationbufferreduce 1 # im Bereich zwischen elevationpenaltybuffer und elevationmaxbuffer wird eine Höhenstrafe, die einer Steigung oder Gefälle dieses Wertes (in Prozent) entspricht, verhängt und diese Höhenmeter vom Puffer abgezogen. assign considerTurnRestrictions true # bei false werden die Abbiegebeschränkungen ignoriert
assign lmc switch low_memory_cutoff 10000 0 assign pass1coefficient 2.5 # Berechnugskoeffizient für erste schnelle Berechnung
---context:way assign pass2coefficient 0 # Berechnugskoeffizient für zweite exakte Berechnung
# sinnvolle Werte für den ersten Koeffizienten:
# Parameter für die Wege # 1 exakte Berechnung beim ersten Durchlauf
#zusätzliche Kosten in Meter für jeden Streckenabschnitt # umso größer die Werte umso schneller und ungenauer die erste Berechnung
# sinnvolle Werte für den zweiten Koeffizienten:
assign any_cycleroute or route_bicycle_icn=yes or route_bicycle_ncn=yes or route_bicycle_rcn=yes route_bicycle_lcn=yes # 0 exakte Berechnung mit Beschränkung des Suchgebiets über die Kosten der ersten Berechnung
assign nodeaccessgranted or any_cycleroute lcn=yes # -1 keine zweite Berechnung, nur sinnvoll bei 1 im ersten Durchlauf
assign cycleway # Um die ungenauen SRTM Höhendaten zu filtern werden für jeweils für Anstiege und Gefälle Puffer verwendet. Erst wenn diese überschritten werden die Segmente als Anstiege oder Gefälle gewertet.
or bicycle_road=yes or highway=cycleway and highway=path|footway bicycle=designated|yes
assign elevationpenaltybuffer 7 # Höhenpuffer (in Meter) ab dem die Höhenstrafen beginnen und das Segment als Anstieg und Gefälle gewertet wird
assign footway assign elevationmaxbuffer 13 # Maximale Puffergröße (in Meter), alles darüberhinausgehende wird voll bestraft
or highway=footway and highway=path foot=designated|yes assign elevationbufferreduce 1 # im Bereich zwischen elevationpenaltybuffer und elevationmaxbuffer wird eine Höhenstrafe, die einer Steigung oder Gefälle dieses Wertes (in Prozent) entspricht, verhängt und diese Höhenmeter vom Puffer abgezogen.
assign turncost ---context:way
switch junction=roundabout 0
150 # Kosten die für eine 90 Grad Abbiegung berechnet werden. Für kleinere Winkel werden sie mit turncost*cos(Winkel) berechnet, bei Kreisverkehr keine weitere Kosten # Parameter für die Wege
#zusätzliche Kosten in Meter für jeden Streckenabschnitt
assign initialclassifier # hier wird bestimmten Wegen ein Wert zugeordnet und wenn er sich vom vorherigen unterscheidet die initalcost hinzugerechnet
switch route=ferry 2 assign any_cycleroute or route_bicycle_icn=yes or route_bicycle_ncn=yes or route_bicycle_rcn=yes route_bicycle_lcn=yes
switch highway=steps 3 assign nodeaccessgranted or any_cycleroute lcn=yes
switch cycleway 4
switch footway 5 assign cycleway
1 or highway=cycleway and highway=path|footway|pedestrian bicycle=designated|yes
assign initialcost assign footway
switch route=ferry 10000 # Kosten wenn eine Fähre verwendet wird or highway=footway|pedestrian and highway=path foot=designated|yes
switch highway=steps 1000 # Kosten für Stufen
switch cycleway 100 # Kosten für Radwege assign turncost
switch footway 1000 # Kosten für Fußwege switch junction=roundabout 0
0 150 # Kosten die für eine 90 Grad Abbiegung berechnet werden. Für kleinere Winkel werden sie mit turncost*cos(Winkel) berechnet, bei Kreisverkehr keine weitere Kosten
# Kosten ab hier als Meter für jeden tatsächlichen Meter assign initialclassifier # hier wird bestimmten Wegen ein Wert zugeordnet und wenn er sich vom vorherigen unterscheidet die initalcost hinzugerechnet
switch route=ferry 2
assign oneway switch highway=steps 3
switch oneway= switch cycleway 4
junction=roundabout switch footway 5
or oneway=yes or oneway=true oneway=1 1
assign onewaypenalty assign initialcost
switch switch reversedirection=yes oneway oneway=-1 switch route=ferry 10000 # Kosten wenn eine Fähre verwendet wird
switch or cycleway=opposite or cycleway=opposite_lane or cycleway=opposite_track oneway:bicycle=no 0 #zusätzliche Kosten für in Gegenrichtung für Radfahrer freigegebene Einbahnstraßen in Gegenrichtung switch highway=steps switch no_steps 1000000 dismount_cost # Kosten für Stufen
switch or highway=primary highway=primary_link add lmc 50 #zusätzliche Kosten für Bundesstraßen Einbahnstraßen in Gegenrichtung switch cycleway multiply 11.1111112 multiply avoid_cycleways avoid_cycleways # Kosten für Radwege
switch or highway=secondary highway=secondary_link add lmc 30 #zusätzliche Kosten für Landstraßen Einbahnstraßen in Gegenrichtung switch footway dismount_cost # Kosten für Fußwege
switch or highway=tertiary highway=tertiary_link add lmc 25 #zusätzliche Kosten für Kreisstraßen Einbahnstraßen in Gegenrichtung 0
20.0 #zusätzliche Kosten für sonstige Einbahnstraßen in Gegenrichtung
0.0 # Kosten ab hier als Meter für jeden tatsächlichen Meter
assign defaultaccess assign oneway
switch access= switch oneway=
not motorroad=yes junction=roundabout
switch or access=private access=no or oneway=yes or oneway=true oneway=1
0
1 assign onewaypenalty
switch switch reversedirection=yes oneway oneway=-1
assign bikeaccess switch or cycleway=opposite or cycleway=opposite_lane or cycleway=opposite_track oneway:bicycle=no 0 #zusätzliche Kosten für in Gegenrichtung für Radfahrer freigegebene Einbahnstraßen in Gegenrichtung
or any_cycleroute switch no_wrong_oneway 10000
switch bicycle= switch or highway=primary highway=primary_link 50 #zusätzliche Kosten für Bundesstraßen Einbahnstraßen in Gegenrichtung
switch bicycle_road=yes switch or highway=secondary highway=secondary_link 30 #zusätzliche Kosten für Landstraßen Einbahnstraßen in Gegenrichtung
1 switch or highway=tertiary highway=tertiary_link 25 #zusätzliche Kosten für Kreisstraßen Einbahnstraßen in Gegenrichtung
switch vehicle= 20.0 #zusätzliche Kosten für sonstige Einbahnstraßen in Gegenrichtung
defaultaccess 0.0
switch or vehicle=private vehicle=no
0 assign defaultaccess
1 switch access=
not or bicycle=private or and not ignore_bicycle_no bicycle=no bicycle=dismount not motorroad=yes
switch or access=private access=no
0
assign footaccess 1
or bikeaccess
or and bicycle=dismount ignore_bicycle_no assign bikeaccess
switch foot= or any_cycleroute
defaultaccess switch bicycle=
not or foot=private foot=no switch vehicle=
defaultaccess
assign accesspenalty switch or vehicle=private vehicle=no
switch bikeaccess 0
0 1
switch footaccess not or bicycle=private or and not ignore_bicycle_no bicycle=no bicycle=dismount
10 #Zusatzkosten fürs Schieben
10000 #Zusatzkosten für gesperrte oder private Wege
assign footaccess
assign maxspeed_forward or bikeaccess
switch maxspeed:forward=50 50 or and bicycle=dismount ignore_bicycle_no
switch maxspeed:forward=30 30 switch foot=
switch maxspeed:forward=10 10 defaultaccess
switch maxspeed:forward=20 20 not or foot=private foot=no
switch maxspeed:forward=40 40
switch maxspeed:forward=60 60 assign accesspenalty
switch maxspeed:forward=70 70 switch bikeaccess
switch maxspeed:forward=80 80 0
switch maxspeed:forward=90 90 switch footaccess
switch maxspeed:forward=100 100 10 #Zusatzkosten fürs Schieben
switch maxspeed:forward=110 110 10000 #Zusatzkosten für gesperrte oder private Wege
switch maxspeed:forward=120 120
switch maxspeed:forward=130 130 assign maxspeed_forward
switch maxspeed:forward=urban 50 switch maxspeed:forward=50 50
switch maxspeed:forward=rural 100 switch maxspeed:forward=30 30
0 switch maxspeed:forward=10 10
switch maxspeed:forward=20 20
assign maxspeed_backward switch maxspeed:forward=40 40
switch maxspeed:backward=50 50 switch maxspeed:forward=60 60
switch maxspeed:backward=30 30 switch maxspeed:forward=70 70
switch maxspeed:backward=10 10 switch maxspeed:forward=80 80
switch maxspeed:backward=20 20 switch maxspeed:forward=90 90
switch maxspeed:backward=40 40 switch maxspeed:forward=100 100
switch maxspeed:backward=60 60 switch maxspeed:forward=110 110
switch maxspeed:backward=70 70 switch maxspeed:forward=120 120
switch maxspeed:backward=80 80 switch maxspeed:forward=130 130
switch maxspeed:backward=90 90 switch maxspeed:forward=urban 50
switch maxspeed:backward=100 100 switch maxspeed:forward=rural 100
switch maxspeed:backward=110 110 0
switch maxspeed:backward=120 120
switch maxspeed:backward=130 130 assign maxspeed_backward
switch maxspeed:backward=urban 50 switch maxspeed:backward=50 50
switch maxspeed:backward=rural 100 switch maxspeed:backward=30 30
0 switch maxspeed:backward=10 10
switch maxspeed:backward=20 20
assign maxspeed switch maxspeed:backward=40 40
switch and reversedirection=yes maxspeed_backward maxspeed_backward switch maxspeed:backward=60 60
switch and not reversedirection=yes maxspeed_forward maxspeed_forward switch maxspeed:backward=70 70
switch maxspeed=50 50 switch maxspeed:backward=80 80
switch maxspeed=30 30 switch maxspeed:backward=90 90
switch maxspeed=10 10 switch maxspeed:backward=100 100
switch maxspeed=20 20 switch maxspeed:backward=110 110
switch maxspeed=40 40 switch maxspeed:backward=120 120
switch maxspeed=60 60 switch maxspeed:backward=130 130
switch maxspeed=70 70 switch maxspeed:backward=urban 50
switch maxspeed=80 80 switch maxspeed:backward=rural 100
switch maxspeed=90 90 0
switch maxspeed=100 100
switch maxspeed=110 110 assign maxspeed
switch maxspeed=120 120 switch and reversedirection=yes maxspeed_backward maxspeed_backward
switch maxspeed=130 130 switch and not reversedirection=yes maxspeed_forward maxspeed_forward
switch maxspeed=urban 50 switch maxspeed=50 50
switch maxspeed=rural 100 switch maxspeed=30 30
999 switch maxspeed=10 10
switch maxspeed=20 20
switch maxspeed=40 40
assign downspeedpenalty switch maxspeed=60 60
switch equal maxspeed 10 4 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h bei Gefälle switch maxspeed=70 70
switch equal maxspeed 20 1.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h bei Gefälle switch maxspeed=80 80
switch equal maxspeed 30 0.7 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h bei Gefälle switch maxspeed=90 90
switch equal maxspeed 40 0.4 # Zusatzkosten für Geschwindigkeitsbegrenzung 40 km/h bei Gefälle switch maxspeed=100 100
switch equal maxspeed 50 0.2 # Zusatzkosten für Geschwindigkeitsbegrenzung 50 km/h bei Gefälle switch maxspeed=110 110
0 switch maxspeed=120 120
switch maxspeed=130 130
assign flatspeedpenalty switch maxspeed=urban 50
switch equal maxspeed 10 2 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h in der Ebene switch maxspeed=rural 100
switch equal maxspeed 20 0.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h in der Ebene 999
switch equal maxspeed 30 0.15 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h in der Ebene
switch equal maxspeed 40 0.12 # Zusatzkosten für Geschwindigkeitsbegrenzung 40 km/h bei Gefälle
switch equal maxspeed 50 0.1 # Zusatzkosten für Geschwindigkeitsbegrenzung 50 km/h in der Ebene assign downspeedpenalty
0 switch equal maxspeed 10 4 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h bei Gefälle
switch equal maxspeed 20 1.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h bei Gefälle
assign upspeedpenalty switch equal maxspeed 30 0.7 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h bei Gefälle
switch equal maxspeed 10 1.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h bei Anstiegen switch equal maxspeed 40 0.4 # Zusatzkosten für Geschwindigkeitsbegrenzung 40 km/h bei Gefälle
switch equal maxspeed 20 0.4 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h bei Anstiegen switch equal maxspeed 50 0.2 # Zusatzkosten für Geschwindigkeitsbegrenzung 50 km/h bei Gefälle
switch equal maxspeed 30 0.1 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h bei Anstiegen 0
0
assign flatspeedpenalty
switch equal maxspeed 10 2 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h in der Ebene
assign surfacepenalty switch equal maxspeed 20 0.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h in der Ebene
add switch embedded_rails=tram|yes|rail 10 # Zusatzkosten bei Schienen in der Fahrbahn switch equal maxspeed 30 0.15 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h in der Ebene
0 switch equal maxspeed 40 0.12 # Zusatzkosten für Geschwindigkeitsbegrenzung 40 km/h in der Ebene
switch surface=asphalt|paved 0 #Zusatzkosten für Teer oder versiegelte Flächen switch equal maxspeed 50 0.1 # Zusatzkosten für Geschwindigkeitsbegrenzung 50 km/h in der Ebene
switch concrete=plates 1 # Zusatzkosten für Betonplattenwege 0
switch concrete=lanes 2 # Zusatzkosten für Betonspurplatten
switch surface=concrete|paving_stones|wood|metal 0.4 #Zusatzkosten für Beton, Pflastersteine, Holz oder Metall assign upspeedpenalty
switch surface=cobblestone|fine_gravel|compacted|sett|grass_paver 4 #Zusatzkosten für Kopfsteinpflaster, Splitt, verdichtete Deckschicht, behauene Pflastersteine oder Rasengittersteine switch equal maxspeed 10 1.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h bei Anstiegen
switch surface=gravel|sand|pebblestone add lmc 10 #Zusatzkosten für Schotter, Sand oder Kies switch equal maxspeed 20 0.4 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h bei Anstiegen
switch surface=ground|grass|unpaved|dirt|earth|mud|clay add lmc 50 #Zusatzkosten für naturbelassene Wege, Grasswege, unbefestigte Wege, Schmutzwege, erdige Wege, schlammige Wege oder Lehmwege switch equal maxspeed 30 0.1 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h bei Anstiegen
0 0
assign smoothnesspenalty
switch smoothness=excellent|good|very_good 0 #Zusatzkosten für excellente, gute, oder sehr gute Oberflächen assign surfacepenalty
switch smoothness=intermediate|medium 0.2 #Zusatzkosten für mittelmäßige Oberflächen add switch embedded_rails=tram|yes|rail 10 # Zusatzkosten bei Schienen in der Fahrbahn
switch smoothness=rough|poor 2 #Zusatzkosten für raue oder schlechte Oberflächen 0
switch smoothness=robust_wheels|bad add lmc 10 #Zusatzkosten für Oberflächen die robuste Reifen benötigen oder schlechte Oberflächen multiply avoidbw
switch smoothness=high_clearance|off_road_wheels|very_bad|horrible|very_horrible|impassable add lmc 100 #Zusatzkosten für Oberflächen die eine erhöhte Bodenfreiheit oder Geländebereifung benötigen, schrecklich, sehr schrecklich oder unpasierbar sind switch surface=asphalt|paved 0 #Zusatzkosten für Teer oder versiegelte Flächen
0 switch concrete=plates 1 # Zusatzkosten für Betonplattenwege
switch concrete=lanes 2 # Zusatzkosten für Betonspurplatten
switch surface=concrete|paving_stones|wood|metal 0.4 #Zusatzkosten für Beton, Pflastersteine, Holz oder Metall
assign costfactor switch surface=cobblestone|fine_gravel|compacted|sett|grass_paver 4 #Zusatzkosten für Kopfsteinpflaster, Splitt, verdichtete Deckschicht, behauene Pflastersteine oder Rasengittersteine
switch surface=gravel|sand|pebblestone 10 #Zusatzkosten für Schotter, Sand oder Kies
# dieser Abschnitt ist für die Kosten in der Ebene switch surface=ground|grass|unpaved|dirt|earth|mud|clay 50 #Zusatzkosten für naturbelassene Wege, Grasswege, unbefestigte Wege, Schmutzwege, erdige Wege, schlammige Wege oder Lehmwege
0
switch and highway= not route=ferry 10000 # Kosten für alles ohne higway tag außer Fähren
switch or highway=proposed highway=abandoned 10000 # Kosten für geplante oder Wege im Bau assign smoothnesspenalty
multiply avoidbw
min 9999 switch smoothness=excellent|good|very_good 0 #Zusatzkosten für excellente, gute, oder sehr gute Oberflächen
switch smoothness=intermediate|medium 0.7 #Zusatzkosten für mittelmäßige Oberflächen
add onewaypenalty switch smoothness=rough|poor 2 #Zusatzkosten für raue oder schlechte Oberflächen
add accesspenalty switch smoothness=robust_wheels|bad 10 #Zusatzkosten für Oberflächen die robuste Reifen benötigen oder schlechte Oberflächen
add surfacepenalty switch smoothness=high_clearance|off_road_wheels|very_bad|horrible|very_horrible|impassable 100 #Zusatzkosten für Oberflächen die eine erhöhte Bodenfreiheit oder Geländebereifung benötigen, schrecklich, sehr schrecklich oder unpasierbar sind
add switch consider_smoothness_tags smoothnesspenalty 0 0
add flatspeedpenalty
switch highway=motorway|motorway_link 10000 # Kosten für Autobahnen assign costfactor
switch route=ferry 10.67 # Kosten für Fähren
switch highway=trunk|trunk_link 5 # Kosten für eine autobahnänliche Straße # dieser Abschnitt ist für die Kosten in der Ebene
switch highway=primary|primary_link 2 # Kosten für Bundesstraßen
switch highway=secondary|secondary_link 1 # Kosten für Landstraßen switch and highway= not route=ferry 10000 # Kosten für alles ohne higway tag außer Fähren
switch highway=tertiary|tertiary_link 1 # Kosten für Kreisstraßen switch or highway=proposed highway=abandoned 10000 # Kosten für geplante oder Wege im Bau
switch highway=unclassified 1 # Kosten für Verbindungsstraßen
switch highway=residential|service 1.2 # Kosten für Wohn- und Zufahrtsstraßen min 9999
switch highway=track max 1
switch tracktype=grade1 1.2 # Kosten für geteerte, betonierte oder gepflasterte Feldwege
switch tracktype=grade2 7 # Kosten für geschotterte Feldwege add onewaypenalty
switch tracktype=grade3 add lmc 40 # Kosten für Feldwege mit weichem Untergrund add accesspenalty
switch tracktype=grade4 add lmc 50 # Kosten für unbefestigte Feldwege add max surfacepenalty smoothnesspenalty
switch tracktype=grade5 add lmc 50 # Kosten für kaum erkennbare Feldwege add flatspeedpenalty
add lmc 20 # Kosten für Feldwege ohne Oberflächenangabe
switch cycleway 1.3 # Kosten für Fahrradwege max 1
switch ( or highway=living_street living_street=yes ) 4 # Kosten für Spielstraßen switch highway=motorway|motorway_link 10000 # Kosten für Autobahnen
switch highway=road 7 # Kosten für noch nicht genauer beschriebene Straße switch route=ferry 10.67 # Kosten für Fähren
switch footway 15 # Kosten für Fußwege switch highway=trunk|trunk_link add 1 multiply avoidmr2 4 # Kosten für eine autobahnänliche Straße
switch highway=pedestrian 20 # Kosten für Gehwege switch highway=primary|primary_link add 0.7 multiply avoidmr2 1.3 # Kosten für Bundesstraßen
switch highway=steps 30 # Kosten für Stufen switch highway=secondary|secondary_link 1 # Kosten für Landstraßen
switch highway=path switch highway=tertiary|tertiary_link add 0.7 multiply avoidsr 0.3 # Kosten für Kreisstraßen
switch surface= add lmc 40 # Kosten für Pfade ohne Oberflächenangabe switch highway=unclassified add 0.7 multiply avoidsr 0.3 # Kosten für Verbindungsstraßen
1.3 # Kosten für Pfade mit Oberflächenangabe switch highway=residential|service add 0.7 multiply avoidsr 0.5 # Kosten für Wohn- und Zufahrtsstraßen
switch highway=bridleway add lmc 80 # Kosten für Reitwege switch highway=track
add lmc 20 # Kosten für sonstige Wege switch tracktype=grade1 add 0.7 multiply avoidsr 0.5 # Kosten für geteerte, betonierte oder gepflasterte Feldwege
switch tracktype=grade2 multiply avoidbw add 1 multiply avoidsr 6 # Kosten für geschotterte Feldwege
assign uphillcostfactor switch tracktype=grade3 multiply avoidbw 40 # Kosten für Feldwege mit weichem Untergrund
switch tracktype=grade4 multiply avoidbw 50 # Kosten für unbefestigte Feldwege
# dieser Abschnitt ist für die Kosten bei Anstiegen switch tracktype=grade5 multiply avoidbw 50 # Kosten für kaum erkennbare Feldwege
# da er von der Struktur identisch wie der vorherige Abschnitt werde ich die Beschreibung hier nicht wiederholen switch surface= multiply avoidbw 20 # Kosten für Feldwege ohne Oberflächenangabe
add 0.7 multiply avoidsr 0.5 # Kosten für Feldwege mit Oberflächenangabe
switch and highway= not route=ferry 10000 switch cycleway add 0.58 multiply avoid_cycleways 0.24 # Kosten für Fahrradwege
switch or highway=proposed highway=abandoned 10000 switch highway=living_street add 2 multiply avoidsr 2 # Kosten für Spielstraßen
switch highway=road add 3 multiply avoidsr 4 # Kosten für noch nicht genauer beschriebene Straße
min 9999 switch footway 20 # Kosten für Fußwege
switch highway=steps 30 # Kosten für Stufen
add upspeedpenalty switch highway=path
add onewaypenalty switch surface= multiply avoidbw 40 # Kosten für Pfade ohne Oberflächenangabe
add accesspenalty multiply avoidsr add 0.58 multiply avoid_cycleways 0.24 # Kosten für Pfade mit Oberflächenangabe
add switch consider_smoothness_tags smoothnesspenalty 0 switch highway=bridleway multiply avoidbw 80 # Kosten für Reitwege
add surfacepenalty 20 # Kosten für sonstige Wege
switch highway=motorway|motorway_link 10000 assign uphillcostfactor
switch route=ferry 10.67
switch highway=trunk|trunk_link 7 # dieser Abschnitt ist für die Kosten bei Anstiegen
switch highway=primary|primary_link 3 # da er von der Struktur identisch wie der vorherige Abschnitt werde ich die Beschreibung hier nicht wiederholen
switch highway=secondary|secondary_link 1.2
switch highway=tertiary|tertiary_link 1 switch and highway= not route=ferry 10000
switch highway=unclassified 1 switch or highway=proposed highway=abandoned 10000
switch highway=residential|service 1
switch highway=track min 9999
switch tracktype=grade1 1 max 1
switch tracktype=grade2 3
switch tracktype=grade3 add lmc 40 add onewaypenalty
switch tracktype=grade4 add lmc 50 add accesspenalty
switch tracktype=grade5 add lmc 50 add max surfacepenalty smoothnesspenalty
add lmc 20 add upspeedpenalty
switch cycleway 1 max 1
switch ( or highway=living_street living_street=yes ) 2.5 switch highway=motorway|motorway_link 10000
switch highway=road 5 switch route=ferry 10.67
switch footway 15 switch highway=trunk|trunk_link add 1 multiply avoidmr2 6
switch highway=pedestrian 20 switch highway=primary|primary_link add 0.7 multiply avoidmr2 2.3
switch highway=steps 30 switch highway=secondary|secondary_link add 0.7 multiply avoidmr2 0.5
switch highway=path switch highway=tertiary|tertiary_link 1
switch surface= add lmc 30 switch highway=unclassified 1
1 switch highway=residential|service add 0.7 multiply avoidsr 0.3
switch highway=bridleway add lmc 80 switch highway=track
add lmc 20 switch tracktype=grade1 add 0.7 multiply avoidsr 0.3
switch tracktype=grade2 multiply avoidbw add 1 multiply avoidsr 2
assign downhillcostfactor switch tracktype=grade3 multiply avoidbw 40
switch tracktype=grade4 multiply avoidbw 50
# dieser Abschnitt ist für die Kosten bei Gefälle switch tracktype=grade5 multiply avoidbw 50
# da er von der Struktur identisch wie der vorvorherige Abschnitt werde ich die Beschreibung hier auch nicht wiederholen switch surface= multiply avoidbw 20
add 0.7 multiply avoidsr 0.3
switch and highway= not route=ferry 10000 switch cycleway add 0.28 multiply avoid_cycleways 0.24
switch or highway=proposed highway=abandoned 10000 switch highway=living_street add 1 multiply avoidsr 1.5
switch highway=road add 4 multiply avoidsr 6
min 9999 switch footway 30
switch highway=steps 40
add downspeedpenalty switch highway=path
add onewaypenalty switch surface= multiply avoidbw 40
add accesspenalty multiply avoidsr add 0.28 multiply avoid_cycleways 0.24
add switch consider_smoothness_tags smoothnesspenalty 0 switch highway=bridleway multiply avoidbw 80
add surfacepenalty 20
switch highway=motorway|motorway_link 10000 assign downhillcostfactor
switch route=ferry 10.67
switch highway=trunk|trunk_link 3 # dieser Abschnitt ist für die Kosten bei Gefälle
switch highway=primary|primary_link 2 # da er von der Struktur identisch wie der vorvorherige Abschnitt werde ich die Beschreibung hier auch nicht wiederholen
switch highway=secondary|secondary_link 1
switch highway=tertiary|tertiary_link 1 switch and highway= not route=ferry 10000
switch highway=unclassified 1.2 switch or highway=proposed highway=abandoned 10000
switch highway=residential|service 2
switch highway=track min 9999
switch tracktype=grade1 2 max 1
switch tracktype=grade2 8
switch tracktype=grade3 add lmc 40 add downspeedpenalty
switch tracktype=grade4 add lmc 50 add onewaypenalty
switch tracktype=grade5 add lmc 50 add accesspenalty
add lmc 20 add max smoothnesspenalty surfacepenalty
switch cycleway 2 max 1
switch ( or highway=living_street living_street=yes ) 8 switch highway=motorway|motorway_link 10000
switch highway=road 10 switch route=ferry 10.67
switch footway 20 switch highway=trunk|trunk_link add 1 multiply avoidmr2 2
switch highway=pedestrian 30 switch highway=primary|primary_link add 0.7 multiply avoidmr2 1.3
switch highway=steps 40 switch highway=secondary|secondary_link 1
switch highway=path switch highway=tertiary|tertiary_link add 0.5 multiply avoidsr 0.5
switch surface= add lmc 40 switch highway=unclassified add 0.6 multiply avoidsr 0.6
2 switch highway=residential|service add 1 multiply avoidsr 1
switch highway=bridleway add lmc 80 switch highway=track
add lmc 20 switch tracktype=grade1 add 1 multiply avoidsr 1
switch tracktype=grade2 multiply avoidbw add 4 multiply avoidsr 4
switch tracktype=grade3 multiply avoidbw 40
# hier kommen Variablen die zur Generierung der Abiegehinweise benötigt werden switch tracktype=grade4 multiply avoidbw 50
switch tracktype=grade5 multiply avoidbw 50
assign priorityclassifier = switch surface= multiply avoidbw 20
add 1 multiply avoidsr 1
if ( highway=motorway ) then 30 switch cycleway add 0.5 multiply avoid_cycleways 0.5
else if ( highway=motorway_link ) then 29 switch highway=living_street add 2 multiply avoidsr 6
else if ( highway=trunk ) then 28 switch highway=road add 4 multiply avoidsr 6
else if ( highway=trunk_link ) then 27 switch footway 30
else if ( highway=primary ) then 26 switch highway=steps 40
else if ( highway=primary_link ) then 25 switch highway=path
else if ( highway=secondary ) then 24 switch surface= multiply avoidbw 40
else if ( highway=secondary_link ) then 23 multiply avoidsr add 0.5 multiply avoid_cycleways 0.5
else if ( highway=tertiary ) then 22 switch highway=bridleway multiply avoidbw 80
else if ( highway=tertiary_link ) then 21 20
else if ( highway=unclassified ) then 20
else if ( or highway=residential|living_street living_street=yes ) then 6
else if ( highway=service ) then 6 # hier kommen Variablen die zur Generierung der Abbiegehinweise benötigt werden
else if ( highway=cycleway ) then 6
else if ( or bicycle=designated bicycle_road=yes ) then 6 assign priorityclassifier =
else if ( highway=track ) then if tracktype=grade1 then 6 else 4
else if ( highway=bridleway|road|path|footway ) then 4 if ( highway=motorway ) then 30
else if ( highway=steps ) then 2 else if ( highway=motorway_link ) then 29
else if ( highway=pedestrian ) then 2 else if ( highway=trunk ) then 28
else 0 else if ( highway=trunk_link ) then 27
else if ( highway=primary ) then 26
else if ( highway=primary_link ) then 25
else if ( highway=secondary ) then 24
assign isbadoneway = not equal onewaypenalty 0 else if ( highway=secondary_link ) then 23
assign isgoodoneway = if reversedirection=yes then oneway=-1 else if ( highway=tertiary ) then 22
else if oneway= then junction=roundabout else oneway=yes|true|1 else if ( highway=tertiary_link ) then 21
assign isroundabout = junction=roundabout else if ( highway=unclassified ) then 20
assign islinktype = highway=motorway_link|trunk_link|primary_link|secondary_link|tertiary_link else if ( highway=residential|living_street ) then 6
assign isgoodforcars = if greater priorityclassifier 6 then true else if ( highway=service ) then 6
else if ( or highway=residential|living_street|service living_street=yes ) then true else if ( highway=cycleway ) then 6
else if ( and highway=track tracktype=grade1 ) then true else if ( bicycle=designated ) then 6
else false else if ( highway=track ) then if tracktype=grade1 then 6 else 4
else if ( highway=bridleway|road|path|footway ) then 4
assign classifiermask add isbadoneway else if ( highway=steps ) then 2
add multiply isgoodoneway 2 else if ( highway=pedestrian ) then 2
add multiply isroundabout 4 else 0
add multiply islinktype 8
multiply isgoodforcars 16
---context:node # following code refers to node tags assign isbadoneway = not equal onewaypenalty 0
assign isgoodoneway = if reversedirection=yes then oneway=-1
# Parameter für Knotenpunkte else if oneway= then junction=roundabout else oneway=yes|true|1
# Kosten an Knotenpunkten in Meter assign isroundabout = junction=roundabout
assign islinktype = highway=motorway_link|trunk_link|primary_link|secondary_link|tertiary_link
assign isgoodforcars = if greater priorityclassifier 6 then true
assign defaultaccess else if highway=residential|living_street|service then true
switch access= else if ( and highway=track tracktype=grade1 ) then true
1 # add default barrier restrictions here! else false
switch or access=private access=no
0 assign classifiermask add isbadoneway
1 add multiply isgoodoneway 2
add multiply isroundabout 4
assign bikeaccess add multiply islinktype 8
or nodeaccessgranted=yes multiply isgoodforcars 16
switch bicycle=
switch vehicle=
defaultaccess
switch or vehicle=private vehicle=no ---context:node # following code refers to node tags
0
1 # Parameter für Knotenpunkte
switch or bicycle=private or and not or highway=crossing ignore_bicycle_no bicycle=no bicycle=dismount # Kosten an Knotenpunkten in Meter
0
1
assign defaultaccess
assign footaccess switch access=
or bicycle=dismount 1 # add default barrier restrictions here!
switch foot= switch or access=private access=no
defaultaccess 0
switch or foot=private foot=no 1
0
1 assign bikeaccess
or nodeaccessgranted=yes
assign initialcost switch bicycle=
add switch highway=traffic_signals 200 # Kosten für Ampel switch vehicle=
switch highway=stop 150 # Kosten für Stoppschild defaultaccess
switch railway=crossing|level_crossing 200 # Kosten für Bahnübergang switch or vehicle=private vehicle=no
0 0
switch bikeaccess 1
0 switch or bicycle=private and not or highway=crossing ignore_bicycle_no or bicycle=no bicycle=dismount
switch footaccess 0
10000 # Kosten fürs Absteigen 1
1000000 #Kosten für verbotene oder private Wege
assign footaccess
or bicycle=dismount
switch foot=
defaultaccess
switch or foot=private foot=no
0
1
assign initialcost
add switch highway=traffic_signals 200 # Kosten für Ampel
switch highway=stop 150 # Kosten für Stoppschild
switch railway=crossing|level_crossing 200 # Kosten für Bahnübergang
switch highway=steps switch no_steps 1000000 dismount_cost #Kosten für Stufe
0
switch bikeaccess
0
switch footaccess
dismount_cost # Kosten fürs Aussteigen
1000000 #Kosten für verbotene oder private Wege

View file

@ -1,441 +1,460 @@
# #
# Profile for fast recumbent bikes, contributed by http://www.velomobilforum.de # Profile for fast velomobiles, contributed by http://www.velomobilforum.de
---context:global ---context:global
assign totalMass = 110 #Gesamtmasse des Fahrzeugs (Fahrzeug, Fahrer, Gepäck...) in kg assign no_steps = true # %no_steps% | keine Stufen, das Velomobil soll nicht getragen werden müssen | boolean
assign maxSpeed = 60 #Maximale Geschwindigkeit ab der der Fahrer bremst in km/h assign no_wrong_oneway = false # %no_wrong oneway% | keine Einbahnstrasse in falsche Richtung, auch nicht schiebend | boolean
assign S_C_x = 0.05 #Effektive Stirnfläche in m²
assign C_r = 0.005 #Rollwiderstand assign dismount_cost = 1000 # %dismount_cost% | Umweg in Meter der in Kauf genommen wird bevor eine Strecke genommen wird bei der man austeigen muss, ab 1 000 000 wird keine Schiebestrecke mehr genommen | number
assign bikerPower = 125 #Dauerleistung in Watt assign avoid_main_roads = 3 # %avoid_main_roads% | große Straße vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 3 = Standard, 10 = stark vermeiden | number
assign avoid_small_roads = 5 # %avoid_small_roads% | kleine Straße vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 5 = Standard, 10 = stark vermeiden | number
assign ignore_bicycle_no = false # für Regionen mit falschen bicyle=no tags können sie mit "true" ignoriert werden. Auch Shuttletransporte (bicycle=dismount + foot=no) werden geroutet assign avoid_cycleways = 8 # %avoid_cycleways% | Radwege vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 8 = Standard, 10 = stark vermeiden | number
assign consider_smoothness_tags = true # mit false kann die kanne die Auswertung der smoothness tags abgeschaltet werden assign avoid_elevation = 5 # %avoid_elevation% | Hohenmeter vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 5 = Standard, 10 = stark vermeiden | number
assign low_memory_cutoff = false # mit true werden Wege mit hohen Kosten aus der Berechnung genommen und damit wird die Berechnung schneller und benötigt weniger Arbeitspeicher. assign avoid_bad_ways = 8 # %avoid_bad_ways% | Schlechte Wege vermeiden(0-10): 0 = nicht vermeiden, 1 = leicht vermeiden, 8 = Standard, 10 = stark vermeiden | number
assign turnInstructionMode 1 #Ausgabe von Abiegehinweise 0=keine, 1=automatische Wahl, 2=locus-Style, 3=osmand-Style assign totalMass = 110 # %totalMass% | Gesamtmasse des Fahrzeugs (Fahrzeug, Fahrer, Gepäck...) in kg, für Fahrtzeitschätzung | number
assign turnInstructionCatchingRange 20 # innerhalb dieser Strecke werden mehrere Abiegehinweise zu einem zusammengefasst und die Abiegewinkel werden besser an die generelle Richtung angenähert assign maxSpeed = 60 # Maximale Geschwindigkeit ab der der Fahrer bremst in km/h
assign turnInstructionRoundabouts true # mit "false" werden keine speziellen Abiegehinweise für den Kreisverkehr generiert assign S_C_x = 0.05 # Effektive Stirnfläche in m²
assign C_r = 0.005 # Rollwiderstand
assign downhillcost 80 # Kosten für die Höhenmeter bergab assign bikerPower = 125 # %bikerPower% | Dauerleistung in Watt, für Fahrtzeitschätzung| number
assign downhillcutoff 0.1 # Gefälle unter diesem Wert in Prozent werden nicht gewertet
assign uphillcost 80 # Kosten für die Höhenmeter bergauf
assign uphillcutoff 1 # Steigungen unter diesem Wert in Prozent werden nicht gewertet assign ignore_bicycle_no = false # %ignore_bicycle_no% | für Regionen mit falschen bicyle=no tags können sie mit "true" ignoriert werden. Auch Shuttletransporte (bicycle=dismount + foot=no) werden geroutet | boolean
assign validForBikes true # bei true werden die Außnahmen bei den Abbiegebeschränkungen für Fahrräder aktiviert
assign considerTurnRestrictions true # bei false werden die Abbiegebeschränkungen ignoriert assign turnInstructionMode = 1 # %turnInstructionMode% | Modus für die Abbiegehinweise | [0=keine, 1=automatische Wahl, 2=locus-Style, 3=osmand-Style, 4=comment-Style, 5=gpsies-Style, 6=orux-Style]
assign turnInstructionCatchingRange 20 # innerhalb dieser Strecke werden mehrere Abiegehinweise zu einem zusammengefasst und die Abiegewinkel werden besser an die generelle Richtung angenähert
assign pass1coefficient 3 # Berechnugskoeffizient für erste schnelle Berechnung assign turnInstructionRoundabouts true # mit "false" werden keine speziellen Abiegehinweise für den Kreisverkehr generiert
assign pass2coefficient 0 # Berechnugskoeffizient für zweite exakte Berechnung
# sinnvolle Werte für den ersten Koeffizienten: assign avoidmr2 multiply 0.11111111 multiply avoid_main_roads avoid_main_roads
# 1 exakte Berechnung beim ersten Durchlauf assign avoidsr multiply 0.2 avoid_small_roads
# umso größer die Werte umso schneller und ungenauer die erste Berechnung assign avoidbw multiply 0.125 avoid_bad_ways
# sinnvolle Werte für den zweiten Koeffizienten: assign avoid_ele multiply avoid_elevation 0.2
# 0 exakte Berechnung mit Beschränkung des Suchgebiets über die Kosten der ersten Berechnung
# -1 keine zweite Berechnung, nur sinnvoll bei 1 im ersten Durchlauf assign downhillcost multiply avoid_ele 80 # Kosten für die Höhenmeter bergab
assign downhillcutoff 0.1 # Gefälle unter diesem Wert in Prozent werden nicht gewertet
# Um die ungenauen SRTM Höhendaten zu filtern werden für jeweils für Anstiege und Gefälle Puffer verwendet. Erst wenn diese überschritten werden die Segmente als Anstiege oder Gefälle gewertet. assign uphillcost multiply avoid_ele 80 # Kosten für die Höhenmeter bergauf
assign uphillcutoff 1 # Steigungen unter diesem Wert in Prozent werden nicht gewertet
assign elevationpenaltybuffer 7 # Höhenpuffer (in Meter) ab dem die Höhenstrafen beginnen und das Segment als Anstieg und Gefälle gewertet wird
assign elevationmaxbuffer 13 # Maximale Puffergröße (in Meter), alles darüberhinausgehende wird voll bestraft assign validForBikes true # bei true werden die Außnahmen bei den Abbiegebeschränkungen für Fahrräder aktiviert
assign elevationbufferreduce 1 # im Bereich zwischen elevationpenaltybuffer und elevationmaxbuffer wird eine Höhenstrafe, die einer Steigung oder Gefälle dieses Wertes (in Prozent) entspricht, verhängt und diese Höhenmeter vom Puffer abgezogen. assign considerTurnRestrictions true # bei false werden die Abbiegebeschränkungen ignoriert
assign lmc switch low_memory_cutoff 10000 0 assign pass1coefficient 3 # Berechnugskoeffizient für erste schnelle Berechnung
---context:way assign pass2coefficient 0 # Berechnugskoeffizient für zweite exakte Berechnung
# sinnvolle Werte für den ersten Koeffizienten:
# Parameter für die Wege # 1 exakte Berechnung beim ersten Durchlauf
#zusätzliche Kosten in Meter für jeden Streckenabschnitt # umso größer die Werte umso schneller und ungenauer die erste Berechnung
# sinnvolle Werte für den zweiten Koeffizienten:
assign any_cycleroute or route_bicycle_icn=yes or route_bicycle_ncn=yes or route_bicycle_rcn=yes route_bicycle_lcn=yes # 0 exakte Berechnung mit Beschränkung des Suchgebiets über die Kosten der ersten Berechnung
assign nodeaccessgranted or any_cycleroute lcn=yes # -1 keine zweite Berechnung, nur sinnvoll bei 1 im ersten Durchlauf
assign cycleway # Um die ungenauen SRTM Höhendaten zu filtern werden für jeweils für Anstiege und Gefälle Puffer verwendet. Erst wenn diese überschritten werden die Segmente als Anstiege oder Gefälle gewertet.
or bicycle_road=yes or highway=cycleway and highway=path|footway bicycle=designated|yes
assign elevationpenaltybuffer 7 # Höhenpuffer (in Meter) ab dem die Höhenstrafen beginnen und das Segment als Anstieg und Gefälle gewertet wird
assign footway assign elevationmaxbuffer 13 # Maximale Puffergröße (in Meter), alles darüberhinausgehende wird voll bestraft
or highway=footway and highway=path foot=designated|yes assign elevationbufferreduce 1 # im Bereich zwischen elevationpenaltybuffer und elevationmaxbuffer wird eine Höhenstrafe, die einer Steigung oder Gefälle dieses Wertes (in Prozent) entspricht, verhängt und diese Höhenmeter vom Puffer abgezogen.
assign turncost ---context:way
switch junction=roundabout 0
150 # Kosten die für eine 90 Grad Abbiegung berechnet werden. Für kleinere Winkel werden sie mit turncost*cos(Winkel) berechnet, bei Kreisverkehr keine weitere Kosten # Parameter für die Wege
#zusätzliche Kosten in Meter für jeden Streckenabschnitt
assign initialclassifier # hier wird bestimmten Wegen ein Wert zugeordnet und wenn er sich vom vorherigen unterscheidet die initalcost hinzugerechnet
switch route=ferry 2 assign any_cycleroute or route_bicycle_icn=yes or route_bicycle_ncn=yes or route_bicycle_rcn=yes route_bicycle_lcn=yes
switch highway=steps 3 assign nodeaccessgranted or any_cycleroute lcn=yes
switch cycleway 4
switch footway 5 assign cycleway
1 or highway=cycleway and highway=path|footway|pedestrian bicycle=designated|yes
assign initialcost assign footway
switch route=ferry 15000 # Kosten wenn eine Fähre verwendet wird or highway=footway|pedestrian and highway=path foot=designated|yes
switch highway=steps 1000 # Kosten für Stufen
switch cycleway 800 # Kosten für Radwege assign turncost
switch footway 1000 # Kosten für Fußwege switch junction=roundabout 0
0 150 # Kosten die für eine 90 Grad Abbiegung berechnet werden. Für kleinere Winkel werden sie mit turncost*cos(Winkel) berechnet, bei Kreisverkehr keine weitere Kosten
# Kosten ab hier als Meter für jeden tatsächlichen Meter assign initialclassifier # hier wird bestimmten Wegen ein Wert zugeordnet und wenn er sich vom vorherigen unterscheidet die initalcost hinzugerechnet
switch route=ferry 2
assign oneway switch highway=steps 3
switch oneway= switch cycleway 4
junction=roundabout switch footway 5
or oneway=yes or oneway=true oneway=1 1
assign onewaypenalty assign initialcost
switch switch reversedirection=yes oneway oneway=-1 switch route=ferry 15000 # Kosten wenn eine Fähre verwendet wird
switch or cycleway=opposite or cycleway=opposite_lane or cycleway=opposite_track oneway:bicycle=no 0 #zusätzliche Kosten für in Gegenrichtung für Radfahrer freigegebene Einbahnstraßen in Gegenrichtung switch highway=steps switch no_steps 1000000 dismount_cost # Kosten für Stufen
switch or highway=primary highway=primary_link add lmc 50 #zusätzliche Kosten für Bundesstraßen Einbahnstraßen in Gegenrichtung switch cycleway multiply 12.5 multiply avoid_cycleways avoid_cycleways # Kosten für Radwege
switch or highway=secondary highway=secondary_link add lmc 30 #zusätzliche Kosten für Landstraßen Einbahnstraßen in Gegenrichtung switch footway dismount_cost # Kosten für Fußwege
switch or highway=tertiary highway=tertiary_link add lmc 25 #zusätzliche Kosten für Kreisstraßen Einbahnstraßen in Gegenrichtung 0
20.0 #zusätzliche Kosten für sonstige Einbahnstraßen in Gegenrichtung
0.0 # Kosten ab hier als Meter für jeden tatsächlichen Meter
assign defaultaccess assign oneway
switch access= switch oneway=
not motorroad=yes junction=roundabout
switch or access=private access=no or oneway=yes or oneway=true oneway=1
0
1 assign onewaypenalty
switch switch reversedirection=yes oneway oneway=-1
assign bikeaccess switch or cycleway=opposite or cycleway=opposite_lane or cycleway=opposite_track oneway:bicycle=no 0 #zusätzliche Kosten für in Gegenrichtung für Radfahrer freigegebene Einbahnstraßen in Gegenrichtung
or any_cycleroute switch no_wrong_oneway 10000
switch bicycle= switch or highway=primary highway=primary_link 50 #zusätzliche Kosten für Bundesstraßen Einbahnstraßen in Gegenrichtung
switch bicycle_road=yes switch or highway=secondary highway=secondary_link 30 #zusätzliche Kosten für Landstraßen Einbahnstraßen in Gegenrichtung
1 switch or highway=tertiary highway=tertiary_link 25 #zusätzliche Kosten für Kreisstraßen Einbahnstraßen in Gegenrichtung
switch vehicle= 20.0 #zusätzliche Kosten für sonstige Einbahnstraßen in Gegenrichtung
defaultaccess 0.0
switch or vehicle=private vehicle=no
0 assign defaultaccess
1 switch access=
not or bicycle=private or and not ignore_bicycle_no bicycle=no bicycle=dismount not motorroad=yes
switch or access=private access=no
0
assign footaccess 1
or bikeaccess
or and bicycle=dismount ignore_bicycle_no assign bikeaccess
switch foot= or any_cycleroute
defaultaccess switch bicycle=
not or foot=private foot=no switch vehicle=
defaultaccess
assign accesspenalty switch or vehicle=private vehicle=no
switch bikeaccess 0
0 1
switch footaccess not or bicycle=private or and not ignore_bicycle_no bicycle=no bicycle=dismount
15 #Zusatzkosten fürs Schieben
10000 #Zusatzkosten für gesperrte oder private Wege
assign footaccess
assign maxspeed_forward or bikeaccess
switch maxspeed:forward=50 50 or and bicycle=dismount ignore_bicycle_no
switch maxspeed:forward=30 30 switch foot=
switch maxspeed:forward=10 10 defaultaccess
switch maxspeed:forward=20 20 not or foot=private foot=no
switch maxspeed:forward=40 40
switch maxspeed:forward=60 60 assign accesspenalty
switch maxspeed:forward=70 70 switch bikeaccess
switch maxspeed:forward=80 80 0
switch maxspeed:forward=90 90 switch footaccess
switch maxspeed:forward=100 100 15 #Zusatzkosten fürs Schieben
switch maxspeed:forward=110 110 10000 #Zusatzkosten für gesperrte oder private Wege
switch maxspeed:forward=120 120
switch maxspeed:forward=130 130 assign maxspeed_forward
switch maxspeed:forward=urban 50 switch maxspeed:forward=50 50
switch maxspeed:forward=rural 100 switch maxspeed:forward=30 30
0 switch maxspeed:forward=10 10
switch maxspeed:forward=20 20
assign maxspeed_backward switch maxspeed:forward=40 40
switch maxspeed:backward=50 50 switch maxspeed:forward=60 60
switch maxspeed:backward=30 30 switch maxspeed:forward=70 70
switch maxspeed:backward=10 10 switch maxspeed:forward=80 80
switch maxspeed:backward=20 20 switch maxspeed:forward=90 90
switch maxspeed:backward=40 40 switch maxspeed:forward=100 100
switch maxspeed:backward=60 60 switch maxspeed:forward=110 110
switch maxspeed:backward=70 70 switch maxspeed:forward=120 120
switch maxspeed:backward=80 80 switch maxspeed:forward=130 130
switch maxspeed:backward=90 90 switch maxspeed:forward=urban 50
switch maxspeed:backward=100 100 switch maxspeed:forward=rural 100
switch maxspeed:backward=110 110 0
switch maxspeed:backward=120 120
switch maxspeed:backward=130 130 assign maxspeed_backward
switch maxspeed:backward=urban 50 switch maxspeed:backward=50 50
switch maxspeed:backward=rural 100 switch maxspeed:backward=30 30
0 switch maxspeed:backward=10 10
switch maxspeed:backward=20 20
assign maxspeed switch maxspeed:backward=40 40
switch and reversedirection=yes maxspeed_backward maxspeed_backward switch maxspeed:backward=60 60
switch and not reversedirection=yes maxspeed_forward maxspeed_forward switch maxspeed:backward=70 70
switch maxspeed=50 50 switch maxspeed:backward=80 80
switch maxspeed=30 30 switch maxspeed:backward=90 90
switch maxspeed=10 10 switch maxspeed:backward=100 100
switch maxspeed=20 20 switch maxspeed:backward=110 110
switch maxspeed=40 40 switch maxspeed:backward=120 120
switch maxspeed=60 60 switch maxspeed:backward=130 130
switch maxspeed=70 70 switch maxspeed:backward=urban 50
switch maxspeed=80 80 switch maxspeed:backward=rural 100
switch maxspeed=90 90 0
switch maxspeed=100 100
switch maxspeed=110 110 assign maxspeed
switch maxspeed=120 120 switch and reversedirection=yes maxspeed_backward maxspeed_backward
switch maxspeed=130 130 switch and not reversedirection=yes maxspeed_forward maxspeed_forward
switch maxspeed=urban 50 switch maxspeed=50 50
switch maxspeed=rural 100 switch maxspeed=30 30
999 switch maxspeed=10 10
switch maxspeed=20 20
switch maxspeed=40 40
assign downspeedpenalty switch maxspeed=60 60
switch equal maxspeed 10 5 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h bei Gefälle switch maxspeed=70 70
switch equal maxspeed 20 2 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h bei Gefälle switch maxspeed=80 80
switch equal maxspeed 30 1 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h bei Gefälle switch maxspeed=90 90
switch equal maxspeed 40 0.8 # Zusatzkosten für Geschwindigkeitsbegrenzung 40 km/h bei Gefälle switch maxspeed=100 100
switch equal maxspeed 50 0.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 50 km/h bei Gefälle switch maxspeed=110 110
0 switch maxspeed=120 120
switch maxspeed=130 130
assign flatspeedpenalty switch maxspeed=urban 50
switch equal maxspeed 10 3 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h in der Ebene switch maxspeed=rural 100
switch equal maxspeed 20 1 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h in der Ebene 999
switch equal maxspeed 30 0.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h in der Ebene
switch equal maxspeed 40 0.3 # Zusatzkosten für Geschwindigkeitsbegrenzung 40 km/h in der Ebene
switch equal maxspeed 50 0.1 # Zusatzkosten für Geschwindigkeitsbegrenzung 50 km/h in der Ebene assign downspeedpenalty
0 switch equal maxspeed 10 5 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h bei Gefälle
switch equal maxspeed 20 2 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h bei Gefälle
assign upspeedpenalty switch equal maxspeed 30 1 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h bei Gefälle
switch equal maxspeed 10 1.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h bei Anstiegen switch equal maxspeed 40 0.8 # Zusatzkosten für Geschwindigkeitsbegrenzung 40 km/h bei Gefälle
switch equal maxspeed 20 0.4 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h bei Anstiegen switch equal maxspeed 50 0.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 50 km/h bei Gefälle
switch equal maxspeed 30 0.1 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h bei Anstiegen 0
0
assign flatspeedpenalty
switch equal maxspeed 10 3 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h in der Ebene
assign surfacepenalty switch equal maxspeed 20 1 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h in der Ebene
add switch embedded_rails=tram|yes|rail 20 # Zusatzkosten bei Schienen in der Fahrbahn switch equal maxspeed 30 0.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h in der Ebene
0 switch equal maxspeed 40 0.3 # Zusatzkosten für Geschwindigkeitsbegrenzung 40 km/h in der Ebene
switch surface=asphalt|paved 0 #Zusatzkosten für Teer oder versiegelte Flächen switch equal maxspeed 50 0.1 # Zusatzkosten für Geschwindigkeitsbegrenzung 50 km/h in der Ebene
switch concrete=plates 1 # Zusatzkosten für Betonplattenwege 0
switch concrete=lanes 5 # Zusatzkosten für Betonspurplatten
switch surface=concrete|paving_stones|wood|metal 0.5 #Zusatzkosten für Beton, Pflastersteine, Holz oder Metall assign upspeedpenalty
switch surface=cobblestone|fine_gravel|compacted|sett|grass_paver 5 #Zusatzkosten für Kopfsteinpflaster, Splitt, verdichtete Deckschicht, behauene Pflastersteine oder Rasengittersteine switch equal maxspeed 10 1.5 # Zusatzkosten für Geschwindigkeitsbegrenzung 10 km/h bei Anstiegen
switch surface=gravel|sand|pebblestone add lmc 10 #Zusatzkosten für Schotter, Sand oder Kies switch equal maxspeed 20 0.4 # Zusatzkosten für Geschwindigkeitsbegrenzung 20 km/h bei Anstiegen
switch surface=ground|grass|unpaved|dirt|earth|mud|clay add lmc 50 #Zusatzkosten für naturbelassene Wege, Grasswege, unbefestigte Wege, Schmutzwege, erdige Wege, schlammige Wege oder Lehmwege switch equal maxspeed 30 0.1 # Zusatzkosten für Geschwindigkeitsbegrenzung 30 km/h bei Anstiegen
0 0
assign smoothnesspenalty
switch smoothness=excellent|good|very_good 0 #Zusatzkosten für excellente, gute, oder sehr gute Oberflächen assign surfacepenalty
switch smoothness=intermediate|medium 0.2 #Zusatzkosten für mittelmäßige Oberflächen add switch embedded_rails=tram|yes|rail 20 # Zusatzkosten bei Schienen in der Fahrbahn
switch smoothness=rough|poor 2 #Zusatzkosten für raue oder schlechte Oberflächen 0
switch smoothness=robust_wheels|bad add lmc 10 #Zusatzkosten für Oberflächen die robuste Reifen benötigen oder schlechte Oberflächen multiply avoidbw
switch smoothness=high_clearance|off_road_wheels|very_bad|horrible|very_horrible|impassable add lmc 100 #Zusatzkosten für Oberflächen die eine erhöhte Bodenfreiheit oder Geländebereifung benötigen, schrecklich, sehr schrecklich oder unpasierbar sind switch surface=asphalt|paved 0 #Zusatzkosten für Teer oder versiegelte Flächen
0 switch concrete=plates 1 # Zusatzkosten für Betonplattenwege
switch concrete=lanes 5 # Zusatzkosten für Betonspurplatten
switch surface=concrete|paving_stones|wood|metal 0.5 #Zusatzkosten für Beton, Pflastersteine, Holz oder Metall
assign costfactor switch surface=cobblestone|fine_gravel|compacted|sett|grass_paver 5 #Zusatzkosten für Kopfsteinpflaster, Splitt, verdichtete Deckschicht, behauene Pflastersteine oder Rasengittersteine
switch surface=gravel|sand|pebblestone 10 #Zusatzkosten für Schotter, Sand oder Kies
# dieser Abschnitt ist für die Kosten in der Ebene switch surface=ground|grass|unpaved|dirt|earth|mud|clay 50 #Zusatzkosten für naturbelassene Wege, Grasswege, unbefestigte Wege, Schmutzwege, erdige Wege, schlammige Wege oder Lehmwege
0
switch and highway= not route=ferry 10000 # Kosten für alles ohne higway tag außer Fähren
switch or highway=proposed highway=abandoned 10000 # Kosten für geplante oder Wege im Bau assign smoothnesspenalty
multiply avoidbw
min 9999 switch smoothness=excellent|good|very_good 0 #Zusatzkosten für excellente, gute, oder sehr gute Oberflächen
switch smoothness=intermediate|medium 1 #Zusatzkosten für mittelmäßige Oberflächen
add onewaypenalty switch smoothness=rough|poor 2 #Zusatzkosten für raue oder schlechte Oberflächen
add accesspenalty switch smoothness=robust_wheels|bad 10 #Zusatzkosten für Oberflächen die robuste Reifen benötigen oder schlechte Oberflächen
add surfacepenalty switch smoothness=high_clearance|off_road_wheels|very_bad|horrible|very_horrible|impassable 100 #Zusatzkosten für Oberflächen die eine erhöhte Bodenfreiheit oder Geländebereifung benötigen, schrecklich, sehr schrecklich oder unpasierbar sind
add switch consider_smoothness_tags smoothnesspenalty 0 0
add flatspeedpenalty
switch highway=motorway|motorway_link 10000 # Kosten für Autobahnen assign costfactor
switch route=ferry 10.67 # Kosten für Fähren
switch highway=trunk|trunk_link 2.5 # Kosten für eine autobahnänliche Straße # dieser Abschnitt ist für die Kosten in der Ebene
switch highway=primary|primary_link 1.2 # Kosten für Bundesstraßen
switch highway=secondary|secondary_link 1 # Kosten für Landstraßen switch and highway= not route=ferry 10000 # Kosten für alles ohne higway tag außer Fähren
switch highway=tertiary|tertiary_link 1.1 # Kosten für Kreisstraßen switch or highway=proposed highway=abandoned 10000 # Kosten für geplante oder Wege im Bau
switch highway=unclassified 1.2 # Kosten für Verbindungsstraßen
switch highway=residential|service 1.7 # Kosten für Wohn- und Zufahrtsstraßen min 9999
switch highway=track max 1
switch tracktype=grade1 2.5 # Kosten für geteerte, betonierte oder gepflasterte Feldwege
switch tracktype=grade2 10 # Kosten für geschotterte Feldwege add onewaypenalty
switch tracktype=grade3 add lmc 40 # Kosten für Feldwege mit weichem Untergrund add accesspenalty
switch tracktype=grade4 add lmc 50 # Kosten für unbefestigte Feldwege add max surfacepenalty smoothnesspenalty
switch tracktype=grade5 add lmc 50 # Kosten für kaum erkennbare Feldwege add flatspeedpenalty
add lmc 20 # Kosten für Feldwege ohne Oberflächenangabe
switch cycleway 2.5 # Kosten für Fahrradwege max 1
switch ( or highway=living_street living_street=yes ) 5 # Kosten für Spielstraßen switch highway=motorway|motorway_link 10000 # Kosten für Autobahnen
switch highway=road 10 # Kosten für noch nicht genauer beschriebene Straße switch route=ferry 10.67 # Kosten für Fähren
switch footway 30 # Kosten für Fußwege switch highway=trunk|trunk_link add 1 multiply avoidmr2 1.5 # Kosten für eine autobahnänliche Straße
switch highway=pedestrian 30 # Kosten für Gehwege switch highway=primary|primary_link add 0.5 multiply avoidmr2 0.7 # Kosten für Bundesstraßen
switch highway=steps 40 # Kosten für Stufen switch highway=secondary|secondary_link 1 # Kosten für Landstraßen
switch highway=path switch highway=tertiary|tertiary_link add 0.5 multiply avoidsr 0.6 # Kosten für Kreisstraßen
switch surface= add lmc 40 # Kosten für Pfade ohne Oberflächenangabe switch highway=unclassified add 0.5 multiply avoidsr 0.7 # Kosten für Verbindungsstraßen
10 # Kosten für Pfade mit Oberflächenangabe switch highway=residential|service add 0.7 multiply avoidsr 1 # Kosten für Wohn- und Zufahrtsstraßen
switch highway=bridleway add lmc 80 # Kosten für Reitwege switch highway=track
add lmc 20 # Kosten für sonstige Wege switch tracktype=grade1 add 1 multiply avoidsr 1.5 # Kosten für geteerte, betonierte oder gepflasterte Feldwege
switch tracktype=grade2 multiply avoidbw add 4 multiply avoidsr 6 # Kosten für geschotterte Feldwege
assign uphillcostfactor switch tracktype=grade3 multiply avoidbw 40 # Kosten für Feldwege mit weichem Untergrund
switch tracktype=grade4 multiply avoidbw 50 # Kosten für unbefestigte Feldwege
# dieser Abschnitt ist für die Kosten bei Anstiegen switch tracktype=grade5 multiply avoidbw 50 # Kosten für kaum erkennbare Feldwege
# da er von der Struktur identisch wie der vorherige Abschnitt werde ich die Beschreibung hier nicht wiederholen switch surface= multiply avoidbw 20 # Kosten für Feldwege ohne Oberflächenangabe
add 1 multiply avoidsr 1.5 # Kosten für Feldwege mit Oberflächenangabe
switch and highway= not route=ferry 10000 switch cycleway add 0.58 multiply avoid_cycleways 0.24 # Kosten für Fahrradwege
switch or highway=proposed highway=abandoned 10000 switch highway=living_street add 2 multiply avoidsr 3 # Kosten für Spielstraßen
switch highway=road add 4 multiply avoidsr 6 # Kosten für noch nicht genauer beschriebene Straße
min 9999 switch footway 30 # Kosten für Fußwege
switch highway=steps 40 # Kosten für Stufen
add upspeedpenalty switch highway=path
add onewaypenalty switch surface= multiply avoidbw 40 # Kosten für Pfade ohne Oberflächenangabe
add accesspenalty add 4 multiply avoidsr 6 # Kosten für Pfade mit Oberflächenangabe
add switch consider_smoothness_tags smoothnesspenalty 0 switch highway=bridleway multiply avoidbw 80 # Kosten für Reitwege
add surfacepenalty 20 # Kosten für sonstige Wege
switch highway=motorway|motorway_link 10000 assign uphillcostfactor
switch route=ferry 10.67
switch highway=trunk|trunk_link 6.5 # dieser Abschnitt ist für die Kosten bei Anstiegen
switch highway=primary|primary_link 3 # da er von der Struktur identisch wie der vorherige Abschnitt werde ich die Beschreibung hier nicht wiederholen
switch highway=secondary|secondary_link 1.2
switch highway=tertiary|tertiary_link 1 switch and highway= not route=ferry 10000
switch highway=unclassified 1 switch or highway=proposed highway=abandoned 10000
switch highway=residential|service 1.5
switch highway=track min 9999
switch tracktype=grade1 2 max 1
switch tracktype=grade2 10
switch tracktype=grade3 add lmc 40 add onewaypenalty
switch tracktype=grade4 add lmc 50 add accesspenalty
switch tracktype=grade5 add lmc 50 add max surfacepenalty smoothnesspenalty
add lmc 20 add upspeedpenalty
switch cycleway 2 max 1
switch ( or highway=living_street living_street=yes ) 5 switch highway=motorway|motorway_link 10000
switch highway=road 10 switch route=ferry 10.67
switch footway 30 switch highway=trunk|trunk_link add 1 multiply avoidmr2 5.5
switch highway=pedestrian 30 switch highway=primary|primary_link add 0.5 multiply avoidmr2 2.5
switch highway=steps 40 switch highway=secondary|secondary_link add 0.5 multiply avoidmr2 0.7
switch highway=path switch highway=tertiary|tertiary_link 1
switch surface= add lmc 40 switch highway=unclassified 1
10 switch highway=residential|service add 0.6 multiply avoidsr 0.9
switch highway=bridleway add lmc 80 switch highway=track
add lmc 20 switch tracktype=grade1 add 0.8 multiply avoidsr 1.2
switch tracktype=grade2 multiply avoidbw add 4 multiply avoidsr 6
assign downhillcostfactor switch tracktype=grade3 multiply avoidbw 40
switch tracktype=grade4 multiply avoidbw 50
# dieser Abschnitt ist für die Kosten bei Gefälle switch tracktype=grade5 multiply avoidbw 50
# da er von der Struktur identisch wie der vorvorherige Abschnitt werde ich die Beschreibung hier auch nicht wiederholen switch surface= multiply avoidbw 20
add 1 multiply avoidsr 1.5
switch and highway= not route=ferry 10000 switch cycleway add 0.24 multiply avoid_cycleways 0.22
switch or highway=proposed highway=abandoned 10000 switch highway=living_street add 2 multiply avoidsr 3
switch highway=road add 4 multiply avoidsr 6
min 9999 switch footway 30
switch highway=steps 40
add downspeedpenalty switch highway=path
add onewaypenalty switch surface= multiply avoidbw 40
add accesspenalty add 4 multiply avoidsr 6
add switch consider_smoothness_tags smoothnesspenalty 0 switch highway=bridleway multiply avoidbw 80
add surfacepenalty 20
switch highway=motorway|motorway_link 10000 assign downhillcostfactor
switch route=ferry 10.67
switch highway=trunk|trunk_link 1.5 # dieser Abschnitt ist für die Kosten bei Gefälle
switch highway=primary|primary_link 1 # da er von der Struktur identisch wie der vorvorherige Abschnitt werde ich die Beschreibung hier auch nicht wiederholen
switch highway=secondary|secondary_link 1
switch highway=tertiary|tertiary_link 1.5 switch and highway= not route=ferry 10000
switch highway=unclassified 1.7 switch or highway=proposed highway=abandoned 10000
switch highway=residential|service 2.5
switch highway=track min 9999
switch tracktype=grade1 4 max 1
switch tracktype=grade2 10
switch tracktype=grade3 add lmc 40 add downspeedpenalty
switch tracktype=grade4 add lmc 50 add onewaypenalty
switch tracktype=grade5 add lmc 50 add accesspenalty
add lmc 20 add max smoothnesspenalty surfacepenalty
switch cycleway 5 max 1
switch ( or highway=living_street living_street=yes ) 8 switch highway=motorway|motorway_link 10000
switch highway=road 10 switch route=ferry 10.67
switch footway 30 switch highway=trunk|trunk_link add 0.5 multiply avoidmr2 1
switch highway=pedestrian 30 switch highway=primary|primary_link add 0.5 multiply avoidmr2 0.5
switch highway=steps 40 switch highway=secondary|secondary_link 1
switch highway=path switch highway=tertiary|tertiary_link add 0.6 multiply avoidsr 0.9
switch surface= add lmc 40 switch highway=unclassified add 0.6 multiply avoidsr 1.1
10 switch highway=residential|service add 1 multiply avoidsr 1.5
switch highway=bridleway add lmc 80 switch highway=track
add lmc 20 switch tracktype=grade1 add 1.8 multiply avoidsr 1.2
switch tracktype=grade2 multiply avoidbw add 4 multiply avoidsr 6
switch tracktype=grade3 multiply avoidbw 40
# hier kommen Variablen die zur Generierung der Abiegehinweise benötigt werden switch tracktype=grade4 multiply avoidbw 50
switch tracktype=grade5 multiply avoidbw 50
assign priorityclassifier = switch surface= multiply avoidbw 20
add 1.8 multiply avoidsr 1.2
if ( highway=motorway ) then 30 switch cycleway add 0.2 multiply avoid_cycleways 0.6
else if ( highway=motorway_link ) then 29 switch highway=living_street add 2 multiply avoidsr 6
else if ( highway=trunk ) then 28 switch highway=road add 4 multiply avoidsr 6
else if ( highway=trunk_link ) then 27 switch footway 30
else if ( highway=primary ) then 26 switch highway=steps 40
else if ( highway=primary_link ) then 25 switch highway=path
else if ( highway=secondary ) then 24 switch surface= multiply avoidbw 40
else if ( highway=secondary_link ) then 23 add 4 multiply avoidsr 6
else if ( highway=tertiary ) then 22 switch highway=bridleway multiply avoidbw 80
else if ( highway=tertiary_link ) then 21 20
else if ( highway=unclassified ) then 20
else if ( or highway=residential|living_street living_street=yes ) then 6
else if ( highway=service ) then 6 # hier kommen Variablen die zur Generierung der Abbiegehinweise benötigt werden
else if ( highway=cycleway ) then 6
else if ( or bicycle=designated bicycle_road=yes ) then 6 assign priorityclassifier =
else if ( highway=track ) then if tracktype=grade1 then 6 else 4
else if ( highway=bridleway|road|path|footway ) then 4 if ( highway=motorway ) then 30
else if ( highway=steps ) then 2 else if ( highway=motorway_link ) then 29
else if ( highway=pedestrian ) then 2 else if ( highway=trunk ) then 28
else 0 else if ( highway=trunk_link ) then 27
else if ( highway=primary ) then 26
else if ( highway=primary_link ) then 25
else if ( highway=secondary ) then 24
assign isbadoneway = not equal onewaypenalty 0 else if ( highway=secondary_link ) then 23
assign isgoodoneway = if reversedirection=yes then oneway=-1 else if ( highway=tertiary ) then 22
else if oneway= then junction=roundabout else oneway=yes|true|1 else if ( highway=tertiary_link ) then 21
assign isroundabout = junction=roundabout else if ( highway=unclassified ) then 20
assign islinktype = highway=motorway_link|trunk_link|primary_link|secondary_link|tertiary_link else if ( highway=residential|living_street ) then 6
assign isgoodforcars = if greater priorityclassifier 6 then true else if ( highway=service ) then 6
else if ( or highway=residential|living_street|service living_street=yes ) then true else if ( highway=cycleway ) then 6
else if ( and highway=track tracktype=grade1 ) then true else if ( bicycle=designated ) then 6
else false else if ( highway=track ) then if tracktype=grade1 then 6 else 4
else if ( highway=bridleway|road|path|footway ) then 4
assign classifiermask add isbadoneway else if ( highway=steps ) then 2
add multiply isgoodoneway 2 else if ( highway=pedestrian ) then 2
add multiply isroundabout 4 else 0
add multiply islinktype 8
multiply isgoodforcars 16
---context:node # following code refers to node tags assign isbadoneway = not equal onewaypenalty 0
assign isgoodoneway = if reversedirection=yes then oneway=-1
# Parameter für Knotenpunkte else if oneway= then junction=roundabout else oneway=yes|true|1
# Kosten an Knotenpunkten in Meter assign isroundabout = junction=roundabout
assign islinktype = highway=motorway_link|trunk_link|primary_link|secondary_link|tertiary_link
assign isgoodforcars = if greater priorityclassifier 6 then true
assign defaultaccess else if highway=residential|living_street|service then true
switch access= else if ( and highway=track tracktype=grade1 ) then true
1 # add default barrier restrictions here! else false
switch or access=private access=no
0 assign classifiermask add isbadoneway
1 add multiply isgoodoneway 2
add multiply isroundabout 4
assign bikeaccess add multiply islinktype 8
or nodeaccessgranted=yes multiply isgoodforcars 16
switch bicycle=
switch vehicle=
defaultaccess
switch or vehicle=private vehicle=no ---context:node # following code refers to node tags
0
1 # Parameter für Knotenpunkte
switch or bicycle=private or and not or highway=crossing ignore_bicycle_no bicycle=no bicycle=dismount # Kosten an Knotenpunkten in Meter
0
1
assign defaultaccess
assign footaccess switch access=
or bicycle=dismount 1 # add default barrier restrictions here!
switch foot= switch or access=private access=no
defaultaccess 0
switch or foot=private foot=no 1
0
1 assign bikeaccess
or nodeaccessgranted=yes
assign initialcost switch bicycle=
add switch highway=traffic_signals 250 # Kosten für Ampel switch vehicle=
switch highway=stop 250 # Kosten für Stoppschild defaultaccess
switch railway=crossing|level_crossing 350 # Kosten für Bahnübergang switch or vehicle=private vehicle=no
0 0
switch bikeaccess 1
0 switch or bicycle=private and not or highway=crossing ignore_bicycle_no or bicycle=no bicycle=dismount
switch footaccess 0
10000 # Kosten fürs Absteigen 1
1000000 #Kosten für verbotene oder private Wege
assign footaccess
or bicycle=dismount
switch foot=
defaultaccess
switch or foot=private foot=no
0
1
assign initialcost
add switch highway=traffic_signals 250 # Kosten für Ampel
switch highway=stop 250 # Kosten für Stoppschild
switch railway=crossing|level_crossing 350 # Kosten für Bahnübergang
switch highway=steps switch no_steps 1000000 dismount_cost #Kosten für Stufe
0
switch bikeaccess
0
switch footaccess
dismount_cost # Kosten fürs Aussteigen
1000000 #Kosten für verbotene oder private Wege