[classifier] Added highway=ladder to the routing and other checkers.

Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
This commit is contained in:
Viktor Govako
2025-08-14 21:31:15 -03:00
committed by Konstantin Pastbin
parent 8ef68a5559
commit c7592276f7
7 changed files with 11 additions and 0 deletions

View File

@@ -2311,6 +2311,7 @@ UNIT_CLASS_TEST(TestWithClassificator, OsmType_SimpleTypesSmoke)
{"highway", "cycleway"},
{"highway", "footway"},
{"highway", "ford"},
{"highway", "ladder"},
{"highway", "living_street"},
{"highway", "motorway"},
{"highway", "motorway_junction"},

View File

@@ -61,6 +61,7 @@ public:
m_map[c.GetTypeByPath({"highway", "pedestrian"})] = HighwayClass::Pedestrian;
m_map[c.GetTypeByPath({"highway", "footway"})] = HighwayClass::Pedestrian;
m_map[c.GetTypeByPath({"highway", "bridleway"})] = HighwayClass::Pedestrian;
m_map[c.GetTypeByPath({"highway", "ladder"})] = HighwayClass::Pedestrian;
m_map[c.GetTypeByPath({"highway", "steps"})] = HighwayClass::Pedestrian;
m_map[c.GetTypeByPath({"highway", "cycleway"})] = HighwayClass::Pedestrian;
m_map[c.GetTypeByPath({"highway", "path"})] = HighwayClass::Pedestrian;
@@ -327,6 +328,7 @@ IsWayChecker::IsWayChecker()
{"secondary", Regular},
{"secondary_link", Regular},
{"service", Minors},
{"ladder", Pedestrian},
{"steps", Pedestrian},
{"tertiary", Regular},
{"tertiary_link", Regular},

View File

@@ -86,6 +86,7 @@ VehicleModel::LimitsInitList const kDefaultOptions = {
{HighwayType::HighwayCycleway, true},
{HighwayType::HighwayResidential, true},
{HighwayType::HighwayLivingStreet, true},
// HighwayLadder is missing
{HighwayType::HighwaySteps, true},
{HighwayType::HighwayPedestrian, true},
{HighwayType::HighwayFootway, true},

View File

@@ -41,6 +41,7 @@ HighwayBasedSpeeds const kDefaultSpeeds = {
{HighwayType::HighwayResidential, InOutCitySpeedKMpH(SpeedKMpH(4.5, 5.0))},
{HighwayType::HighwayBridleway, InOutCitySpeedKMpH(SpeedKMpH(1.0, 5.0))},
{HighwayType::HighwayLadder, InOutCitySpeedKMpH(SpeedKMpH(1.0))},
{HighwayType::HighwaySteps, InOutCitySpeedKMpH(SpeedKMpH(3.0))},
{HighwayType::HighwayCycleway, InOutCitySpeedKMpH(SpeedKMpH(4.0, 5.0))},
@@ -80,6 +81,7 @@ VehicleModel::LimitsInitList const kDefaultOptions = {
// HighwayBridleway, HighwayCycleway are missing
{HighwayType::HighwayResidential, true},
{HighwayType::HighwayLivingStreet, true},
{HighwayType::HighwayLadder, true},
{HighwayType::HighwaySteps, true},
{HighwayType::HighwayPedestrian, true},
{HighwayType::HighwayFootway, true},

View File

@@ -485,6 +485,7 @@ UNIT_TEST(VehicleModel_HighwayType_Values)
TEST(check(HighwayType::HighwayMotorwayLink, {"highway", "motorway_link"}), ());
TEST(check(HighwayType::HighwayLivingStreet, {"highway", "living_street"}), ());
TEST(check(HighwayType::HighwayMotorway, {"highway", "motorway"}), ());
TEST(check(HighwayType::HighwayLadder, {"highway", "ladder"}), ());
TEST(check(HighwayType::HighwaySteps, {"highway", "steps"}), ());
TEST(check(HighwayType::HighwayTrunk, {"highway", "trunk"}), ());
TEST(check(HighwayType::HighwayPedestrian, {"highway", "pedestrian"}), ());
@@ -495,6 +496,7 @@ UNIT_TEST(VehicleModel_HighwayType_Values)
TEST(check(HighwayType::HighwaySecondaryLink, {"highway", "secondary_link"}), ());
TEST(check(HighwayType::RouteFerry, {"route", "ferry"}), ());
TEST(check(HighwayType::HighwayTertiaryLink, {"highway", "tertiary_link"}), ());
TEST(check(HighwayType::HighwayLadder, {"highway", "ladder"}), ());
TEST(check(HighwayType::HighwayBusway, {"highway", "busway"}), ());
TEST(check(HighwayType::RouteShuttleTrain, {"route", "shuttle_train"}), ());
}

View File

@@ -301,6 +301,7 @@ HighwayBasedFactors GetOneFactorsForBicycleAndPedestrianModel()
{HighwayType::HighwayCycleway, InOutCityFactor(1.0)},
{HighwayType::HighwayResidential, InOutCityFactor(1.0)},
{HighwayType::HighwayLivingStreet, InOutCityFactor(1.0)},
{HighwayType::HighwayLadder, InOutCityFactor(1.0)},
{HighwayType::HighwaySteps, InOutCityFactor(1.0)},
{HighwayType::HighwayPedestrian, InOutCityFactor(1.0)},
{HighwayType::HighwayFootway, InOutCityFactor(1.0)},
@@ -363,6 +364,7 @@ string DebugPrint(HighwayType type)
case HighwayType::HighwayMotorwayLink: return "highway-motorway_link";
case HighwayType::HighwayLivingStreet: return "highway-living_street";
case HighwayType::HighwayMotorway: return "highway-motorway";
case HighwayType::HighwayLadder: return "highway-ladder";
case HighwayType::HighwaySteps: return "highway-steps";
case HighwayType::HighwayTrunk: return "highway-trunk";
case HighwayType::HighwayPedestrian: return "highway-pedestrian";

View File

@@ -54,6 +54,7 @@ enum class HighwayType : uint16_t
HighwaySecondaryLink = 176,
RouteFerry = 259,
HighwayTertiaryLink = 272,
HighwayLadder = 478,
HighwayBusway = 857, // reserve type here, but this type is not used for any routing by default
RouteShuttleTrain = 1054,
};