From e2a9b5fdf736a7e2605910db302c13fb26dfc077 Mon Sep 17 00:00:00 2001 From: Sarah Hoffmann Date: Mon, 9 Dec 2024 16:34:18 +0100 Subject: [PATCH] exclude sidewalks and similar footways These footways are part of a street that is usually already named. --- lib-lua/themes/nominatim/presets.lua | 16 +++++++++++++++- test/bdd/osm2pgsql/import/tags.feature | 17 +++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/lib-lua/themes/nominatim/presets.lua b/lib-lua/themes/nominatim/presets.lua index fbc9aab1..d8aa7534 100644 --- a/lib-lua/themes/nominatim/presets.lua +++ b/lib-lua/themes/nominatim/presets.lua @@ -2,6 +2,20 @@ 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 module.MAIN_TAGS = {} @@ -156,7 +170,7 @@ module.MAIN_TAGS_STREETS.default = { service = 'named', cycleway = 'named', path = 'named', - footway = 'named', + footway = filter_footways, steps = 'named', bridleway = 'named', track = 'named', diff --git a/test/bdd/osm2pgsql/import/tags.feature b/test/bdd/osm2pgsql/import/tags.feature index cf530eb7..948ffe84 100644 --- a/test/bdd/osm2pgsql/import/tags.feature +++ b/test/bdd/osm2pgsql/import/tags.feature @@ -206,3 +206,20 @@ Feature: Tag evaluation | object | class | type | address | | N13001 | place | houses | 'interpolation': 'odd' | | 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 | -- 2.39.5