[routing] Avoid steps

Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
This commit is contained in:
x7z4w
2025-09-20 13:04:39 +00:00
committed by jeanbaptisteC
parent ad07875b88
commit fceb6e0b8a
2 changed files with 10 additions and 2 deletions

View File

@@ -65,7 +65,9 @@ RoutingOptionsClassifier::RoutingOptionsClassifier()
{{"highway", "track"}, RoutingOptions::Road::Dirty}, {{"highway", "track"}, RoutingOptions::Road::Dirty},
{{"highway", "road"}, RoutingOptions::Road::Dirty}, {{"highway", "road"}, RoutingOptions::Road::Dirty},
{{"psurface", "unpaved_bad"}, RoutingOptions::Road::Dirty}, {{"psurface", "unpaved_bad"}, RoutingOptions::Road::Dirty},
{{"psurface", "unpaved_good"}, RoutingOptions::Road::Dirty}}; {{"psurface", "unpaved_good"}, RoutingOptions::Road::Dirty},
{{"highway", "steps"}, RoutingOptions::Road::Steps},
{{"highway", "ladder"}, RoutingOptions::Road::Steps}};
m_data.Reserve(std::size(types)); m_data.Reserve(std::size(types));
for (auto const & data : types) for (auto const & data : types)
@@ -103,6 +105,9 @@ RoutingOptions::Road ChooseMainRoutingOptionRoad(RoutingOptions options, bool is
if (options.Has(RoutingOptions::Road::Motorway)) if (options.Has(RoutingOptions::Road::Motorway))
return RoutingOptions::Road::Motorway; return RoutingOptions::Road::Motorway;
if (options.Has(RoutingOptions::Road::Steps))
return RoutingOptions::Road::Steps;
return RoutingOptions::Road::Usual; return RoutingOptions::Road::Usual;
} }
@@ -126,6 +131,7 @@ string DebugPrint(RoutingOptions const & routingOptions)
append(RoutingOptions::Road::Motorway); append(RoutingOptions::Road::Motorway);
append(RoutingOptions::Road::Ferry); append(RoutingOptions::Road::Ferry);
append(RoutingOptions::Road::Dirty); append(RoutingOptions::Road::Dirty);
append(RoutingOptions::Road::Steps);
if (wasAppended) if (wasAppended)
ss << " | "; ss << " | ";
@@ -143,6 +149,7 @@ string DebugPrint(RoutingOptions::Road type)
case RoutingOptions::Road::Motorway: return "motorway"; case RoutingOptions::Road::Motorway: return "motorway";
case RoutingOptions::Road::Ferry: return "ferry"; case RoutingOptions::Road::Ferry: return "ferry";
case RoutingOptions::Road::Dirty: return "dirty"; case RoutingOptions::Road::Dirty: return "dirty";
case RoutingOptions::Road::Steps: return "steps";
case RoutingOptions::Road::Usual: return "usual"; case RoutingOptions::Road::Usual: return "usual";
case RoutingOptions::Road::Max: return "max"; case RoutingOptions::Road::Max: return "max";
} }

View File

@@ -18,8 +18,9 @@ public:
Motorway = 1u << 2, Motorway = 1u << 2,
Ferry = 1u << 3, Ferry = 1u << 3,
Dirty = 1u << 4, Dirty = 1u << 4,
Steps = 1u << 5,
Max = (1u << 4) + 1 Max = (1u << 5) + 1
}; };
using RoadType = std::underlying_type_t<Road>; using RoadType = std::underlying_type_t<Road>;