Merge pull request #5999 from mjjbell/mbell/barrier_kerb
Add kerb barrier exception to default car profile
This commit is contained in:
commit
41dda32546
@ -3,6 +3,8 @@
|
||||
- Misc:
|
||||
- FIXED: Upgrade to @mapbox/node-pre-gyp fix various bugs with Node 12/14 [#5991](https://github.com/Project-OSRM/osrm-backend/pull/5991)
|
||||
- FIXED: `valid` type in documentation examples [#5990](https://github.com/Project-OSRM/osrm-backend/issues/5990)
|
||||
- Profile:
|
||||
- FIXED: Add kerb barrier exception to default car profile. [#5999](https://github.com/Project-OSRM/osrm-backend/pull/5999)
|
||||
|
||||
# 5.24.0
|
||||
- Changes from 5.23.0
|
||||
|
@ -46,6 +46,18 @@ Feature: Car - Barriers
|
||||
| bollard | rising | x |
|
||||
| bollard | removable | |
|
||||
|
||||
# https://github.com/Project-OSRM/osrm-backend/issues/5996
|
||||
Scenario: Car - Kerb exception for barriers
|
||||
Then routability should be
|
||||
| node/barrier | node/highway | node/kerb | bothw |
|
||||
| kerb | | | |
|
||||
| kerb | crossing | | x |
|
||||
| kerb | crossing | yes | x |
|
||||
| kerb | | lowered | x |
|
||||
| kerb | | flush | x |
|
||||
| kerb | | raised | |
|
||||
| kerb | | yes | |
|
||||
|
||||
Scenario: Car - Height restrictions
|
||||
Then routability should be
|
||||
| node/barrier | node/maxheight | bothw |
|
||||
|
@ -342,7 +342,18 @@ function process_node(profile, node, result, relations)
|
||||
local bollard = node:get_value_by_key("bollard")
|
||||
local rising_bollard = bollard and "rising" == bollard
|
||||
|
||||
if not profile.barrier_whitelist[barrier] and not rising_bollard or restricted_by_height then
|
||||
-- make an exception for lowered/flat barrier=kerb
|
||||
-- and incorrect tagging of highway crossing kerb as highway barrier
|
||||
local kerb = node:get_value_by_key("kerb")
|
||||
local highway = node:get_value_by_key("highway")
|
||||
local flat_kerb = kerb and ("lowered" == kerb or "flush" == kerb)
|
||||
local highway_crossing_kerb = barrier == "kerb" and highway and highway == "crossing"
|
||||
|
||||
if not profile.barrier_whitelist[barrier]
|
||||
and not rising_bollard
|
||||
and not flat_kerb
|
||||
and not highway_crossing_kerb
|
||||
or restricted_by_height then
|
||||
result.barrier = true
|
||||
end
|
||||
end
|
||||
|
@ -125,6 +125,7 @@
|
||||
{"key": "side_road", "value": "rotary", "description": "gets speed penalty"},
|
||||
{"key": "route", "object_types": ["way"]},
|
||||
{"key": "highway", "value": "traffic_signals", "object_types": ["node"]},
|
||||
{"key": "highway", "value": "crossing", "object_types": ["node"]},
|
||||
{"key": "access", "value": "yes"},
|
||||
{"key": "access", "value": "motorcar"},
|
||||
{"key": "access", "value": "motor_vehicle"},
|
||||
@ -202,6 +203,7 @@
|
||||
{"key": "barrier", "value": "lift_gate"},
|
||||
{"key": "barrier", "value": "no"},
|
||||
{"key": "barrier", "value": "entrance"},
|
||||
{"key": "barrier", "value": "kerb"},
|
||||
{"key": "highway", "value": "motorway"},
|
||||
{"key": "highway", "value": "motorway_link"},
|
||||
{"key": "highway", "value": "trunk"},
|
||||
@ -220,6 +222,8 @@
|
||||
{"key": "highway", "value": "movable"},
|
||||
{"key": "highway", "value": "shuttle_train"},
|
||||
{"key": "highway", "value": "default"},
|
||||
{"key": "kerb", "value": "lowered", "object_types": ["node"]},
|
||||
{"key": "kerb", "value": "flush", "object_types": ["node"]},
|
||||
{"key": "width", "description": "Penalties for narrow streets"},
|
||||
{"key": "lanes", "description": "Penalties for shared single lane streets"},
|
||||
{"key": "lanes:forward", "description": "Lanes in forward direction"},
|
||||
|
Loading…
Reference in New Issue
Block a user