Skip to content

Commit

Permalink
Don’t route on motorroads by foot or bicycle (#6697)
Browse files Browse the repository at this point in the history
  • Loading branch information
mangerlahn committed Oct 5, 2023
1 parent 5723eaa commit 54c5830
Show file tree
Hide file tree
Showing 6 changed files with 22 additions and 2 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
- FIXED: Correct HTTP docs to reflect summary output dependency on steps parameter. [#6655](https://github.com/Project-OSRM/osrm-backend/pull/6655)
- Profiles:
- FIXED: Bicycle and foot profiles now don't route on proposed ways [#6615](https://github.com/Project-OSRM/osrm-backend/pull/6615)
- FIXED: Bicycle and foot profiles now don't route on motor roads [#6697](https://github.com/Project-OSRM/osrm-backend/pull/6697)
- Routing:
- FIXED: Fix adding traffic signal penalties during compression [#6419](https://github.com/Project-OSRM/osrm-backend/pull/6419)
# 5.27.1
Expand Down
6 changes: 6 additions & 0 deletions features/bicycle/way.feature
Original file line number Diff line number Diff line change
Expand Up @@ -40,3 +40,9 @@ Feature: Bike - Accessability of different way types
| highway | man_made | bothw |
| (nil) | (nil) | |
| (nil) | pier | x |

Scenario: Bike - Motorroad
Then routability should be
| highway | motorroad | bothw |
| (nil) | (nil) | x |
| (nil) | yes | |
6 changes: 6 additions & 0 deletions features/foot/way.feature
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,9 @@ Feature: Foot - Accessability of different way types
| footway | | | x |
| proposed | | | |
| proposed | yes | yes | |

Scenario: Foot - Motorroad
Then routability should be
| highway | motorroad | forw |
| (nil) | (nil) | x |
| (nil) | yes | |
3 changes: 2 additions & 1 deletion profiles/bicycle.lua
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,8 @@ function setup()
avoid = Set {
'impassable',
'construction',
'proposed'
'proposed',
'motorroad'
}
}
end
Expand Down
3 changes: 2 additions & 1 deletion profiles/foot.lua
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,8 @@ function setup()

avoid = Set {
'impassable',
'proposed'
'proposed',
'motorroad'
},

speeds = Sequence {
Expand Down
5 changes: 5 additions & 0 deletions profiles/lib/way_handlers.lua
Original file line number Diff line number Diff line change
Expand Up @@ -634,6 +634,11 @@ function WayHandlers.blocked_ways(profile,way,result,data)
return false
end

-- motorroad
if profile.avoid.motorroad and way:get_value_by_key("motorroad") == "yes" then
return false
end

-- In addition to the highway=construction tag above handle the construction=* tag
-- http://wiki.openstreetmap.org/wiki/Key:construction
-- https://taginfo.openstreetmap.org/keys/construction#values
Expand Down

0 comments on commit 54c5830

Please sign in to comment.