exclude sidewalks and similar footways

These footways are part of a street that is usually already named.
This commit is contained in:
Sarah Hoffmann
2024-12-09 16:34:18 +01:00
parent eeb3d5dd0a
commit e2a9b5fdf7
2 changed files with 32 additions and 1 deletions

View File

@@ -2,6 +2,20 @@
local module = {} local module = {}
-- Customized main tag filter functions
local EXCLUDED_FOOTWAYS = { sidewalk = 1, crossing = 1, link = 1, traffic_aisle }
local function filter_footways(place)
if place.has_name then
local footway = place.object.tags.footway
if footway == nil or EXCLUDED_FOOTWAYS[footway] ~= 1 then
return place
end
end
return false
end
-- Main tag definition -- Main tag definition
module.MAIN_TAGS = {} module.MAIN_TAGS = {}
@@ -156,7 +170,7 @@ module.MAIN_TAGS_STREETS.default = {
service = 'named', service = 'named',
cycleway = 'named', cycleway = 'named',
path = 'named', path = 'named',
footway = 'named', footway = filter_footways,
steps = 'named', steps = 'named',
bridleway = 'named', bridleway = 'named',
track = 'named', track = 'named',

View File

@@ -206,3 +206,20 @@ Feature: Tag evaluation
| object | class | type | address | | object | class | type | address |
| N13001 | place | houses | 'interpolation': 'odd' | | N13001 | place | houses | 'interpolation': 'odd' |
| N13002 | place | houses | 'interpolation': 'even' | | N13002 | place | houses | 'interpolation': 'even' |
Scenario: Footways
When loading osm data
"""
n1 x0.0 y0.0
n2 x0 y0.0001
w1 Thighway=footway Nn1,n2
w2 Thighway=footway,name=Road Nn1,n2
w3 Thighway=footway,name=Road,footway=sidewalk Nn1,n2
w4 Thighway=footway,name=Road,footway=crossing Nn1,n2
w5 Thighway=footway,name=Road,footway=residential Nn1,n2
"""
Then place contains exactly
| object | name+name |
| W2 | Road |
| W5 | Road |