From 744f1199eca02b1a1a4166e4d2750c42b0f03239 Mon Sep 17 00:00:00 2001 From: Michael Behrisch Date: Fri, 1 Dec 2023 16:53:22 +0100 Subject: [PATCH] ensuring walkability with foot="yes" fix #14124 --- src/netimport/NIImporter_OpenStreetMap.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/netimport/NIImporter_OpenStreetMap.cpp b/src/netimport/NIImporter_OpenStreetMap.cpp index 8cdf48195979..6f54db37c18f 100644 --- a/src/netimport/NIImporter_OpenStreetMap.cpp +++ b/src/netimport/NIImporter_OpenStreetMap.cpp @@ -743,6 +743,11 @@ NIImporter_OpenStreetMap::insertEdge(Edge* e, int index, NBNode* from, NBNode* t || (myImportSidewalks && (sidewalkType & WAY_FORWARD) != 0 && defaultPermissions != SVC_PEDESTRIAN)) { nbe->addSidewalk(sidewalkWidth * offsetFactor); } + if (!addBackward && (e->myExtraAllowed & SVC_PEDESTRIAN) != 0 && (nbe->getPermissions(0) & SVC_PEDESTRIAN) == 0) { + // pedestrians are explicitly allowed (maybe through foot="yes") but dídn't get a sidewalk (maybe through sidewalk="no") + // since we do not have a backward edge, we need to make sure they can at least walk somewhere, see #14124 + nbe->setPermissions(nbe->getPermissions(0) | SVC_PEDESTRIAN, 0); + } nbe->updateParameters(e->getParametersMap()); nbe->setDistance(distanceStart);