Prints turn types and modifiers as strings
This commit is contained in:
committed by
Daniel J. H
parent
c5b48e3506
commit
aed7bd852d
@@ -90,18 +90,19 @@ void ExtractorCallbacks::ProcessRestriction(const InputConditionalTurnRestrictio
|
||||
*/
|
||||
void ExtractorCallbacks::ProcessWay(const osmium::Way &input_way, const ExtractionWay &parsed_way)
|
||||
{
|
||||
if ((parsed_way.forward_travel_mode == TRAVEL_MODE_INACCESSIBLE ||
|
||||
if ((parsed_way.forward_travel_mode == extractor::TRAVEL_MODE_INACCESSIBLE ||
|
||||
parsed_way.forward_speed <= 0) &&
|
||||
(parsed_way.backward_travel_mode == TRAVEL_MODE_INACCESSIBLE ||
|
||||
(parsed_way.backward_travel_mode == extractor::TRAVEL_MODE_INACCESSIBLE ||
|
||||
parsed_way.backward_speed <= 0) &&
|
||||
parsed_way.duration <= 0)
|
||||
{ // Only true if the way is assigned a valid speed/duration
|
||||
return;
|
||||
}
|
||||
|
||||
if (!fallback_to_duration && (parsed_way.forward_travel_mode == TRAVEL_MODE_INACCESSIBLE ||
|
||||
parsed_way.forward_rate <= 0) &&
|
||||
(parsed_way.backward_travel_mode == TRAVEL_MODE_INACCESSIBLE ||
|
||||
if (!fallback_to_duration &&
|
||||
(parsed_way.forward_travel_mode == extractor::TRAVEL_MODE_INACCESSIBLE ||
|
||||
parsed_way.forward_rate <= 0) &&
|
||||
(parsed_way.backward_travel_mode == extractor::TRAVEL_MODE_INACCESSIBLE ||
|
||||
parsed_way.backward_rate <= 0) &&
|
||||
parsed_way.weight <= 0)
|
||||
{ // Only true if the way is assigned a valid rate/weight and there is no duration fallback
|
||||
@@ -145,7 +146,7 @@ void ExtractorCallbacks::ProcessWay(const osmium::Way &input_way, const Extracti
|
||||
}
|
||||
};
|
||||
|
||||
if (parsed_way.forward_travel_mode != TRAVEL_MODE_INACCESSIBLE)
|
||||
if (parsed_way.forward_travel_mode != extractor::TRAVEL_MODE_INACCESSIBLE)
|
||||
{
|
||||
BOOST_ASSERT(parsed_way.duration > 0 || parsed_way.forward_speed > 0);
|
||||
forward_duration_data =
|
||||
@@ -162,7 +163,7 @@ void ExtractorCallbacks::ProcessWay(const osmium::Way &input_way, const Extracti
|
||||
toValueByEdgeOrByMeter(parsed_way.weight, parsed_way.forward_rate);
|
||||
}
|
||||
}
|
||||
if (parsed_way.backward_travel_mode != TRAVEL_MODE_INACCESSIBLE)
|
||||
if (parsed_way.backward_travel_mode != extractor::TRAVEL_MODE_INACCESSIBLE)
|
||||
{
|
||||
BOOST_ASSERT(parsed_way.duration > 0 || parsed_way.backward_speed > 0);
|
||||
backward_duration_data =
|
||||
@@ -380,12 +381,12 @@ void ExtractorCallbacks::ProcessWay(const osmium::Way &input_way, const Extracti
|
||||
const bool in_forward_direction =
|
||||
(parsed_way.forward_speed > 0 || parsed_way.forward_rate > 0 || parsed_way.duration > 0 ||
|
||||
parsed_way.weight > 0) &&
|
||||
(parsed_way.forward_travel_mode != TRAVEL_MODE_INACCESSIBLE);
|
||||
(parsed_way.forward_travel_mode != extractor::TRAVEL_MODE_INACCESSIBLE);
|
||||
|
||||
const bool in_backward_direction =
|
||||
(parsed_way.backward_speed > 0 || parsed_way.backward_rate > 0 || parsed_way.duration > 0 ||
|
||||
parsed_way.weight > 0) &&
|
||||
(parsed_way.backward_travel_mode != TRAVEL_MODE_INACCESSIBLE);
|
||||
(parsed_way.backward_travel_mode != extractor::TRAVEL_MODE_INACCESSIBLE);
|
||||
|
||||
// split an edge into two edges if forwards/backwards behavior differ
|
||||
const bool split_edge =
|
||||
|
||||
@@ -34,7 +34,8 @@ bool SuppressModeHandler::canProcess(const NodeID,
|
||||
using std::end;
|
||||
|
||||
// travel modes for which navigation should be suppressed
|
||||
static const constexpr char suppressed[] = {TRAVEL_MODE_TRAIN, TRAVEL_MODE_FERRY};
|
||||
static const constexpr char suppressed[] = {extractor::TRAVEL_MODE_TRAIN,
|
||||
extractor::TRAVEL_MODE_FERRY};
|
||||
|
||||
// If the approach way is not on the suppression blacklist, and not all the exit ways share that
|
||||
// mode, there are no ways to suppress by this criteria.
|
||||
|
||||
@@ -111,29 +111,29 @@ void Sol2ScriptingEnvironment::InitContext(LuaScriptingContext &context)
|
||||
|
||||
context.state.new_enum("mode",
|
||||
"inaccessible",
|
||||
TRAVEL_MODE_INACCESSIBLE,
|
||||
extractor::TRAVEL_MODE_INACCESSIBLE,
|
||||
"driving",
|
||||
TRAVEL_MODE_DRIVING,
|
||||
extractor::TRAVEL_MODE_DRIVING,
|
||||
"cycling",
|
||||
TRAVEL_MODE_CYCLING,
|
||||
extractor::TRAVEL_MODE_CYCLING,
|
||||
"walking",
|
||||
TRAVEL_MODE_WALKING,
|
||||
extractor::TRAVEL_MODE_WALKING,
|
||||
"ferry",
|
||||
TRAVEL_MODE_FERRY,
|
||||
extractor::TRAVEL_MODE_FERRY,
|
||||
"train",
|
||||
TRAVEL_MODE_TRAIN,
|
||||
extractor::TRAVEL_MODE_TRAIN,
|
||||
"pushing_bike",
|
||||
TRAVEL_MODE_PUSHING_BIKE,
|
||||
extractor::TRAVEL_MODE_PUSHING_BIKE,
|
||||
"steps_up",
|
||||
TRAVEL_MODE_STEPS_UP,
|
||||
extractor::TRAVEL_MODE_STEPS_UP,
|
||||
"steps_down",
|
||||
TRAVEL_MODE_STEPS_DOWN,
|
||||
extractor::TRAVEL_MODE_STEPS_DOWN,
|
||||
"river_up",
|
||||
TRAVEL_MODE_RIVER_UP,
|
||||
extractor::TRAVEL_MODE_RIVER_UP,
|
||||
"river_down",
|
||||
TRAVEL_MODE_RIVER_DOWN,
|
||||
extractor::TRAVEL_MODE_RIVER_DOWN,
|
||||
"route",
|
||||
TRAVEL_MODE_ROUTE);
|
||||
extractor::TRAVEL_MODE_ROUTE);
|
||||
|
||||
context.state.new_enum("road_priority_class",
|
||||
"motorway",
|
||||
@@ -395,8 +395,8 @@ void Sol2ScriptingEnvironment::InitContext(LuaScriptingContext &context)
|
||||
"get_relations",
|
||||
[&getTypedRefBySol](ExtractionRelationContainer &cont, const sol::object &obj)
|
||||
-> const ExtractionRelationContainer::RelationIDList & {
|
||||
return cont.GetRelations(getTypedRefBySol(obj));
|
||||
},
|
||||
return cont.GetRelations(getTypedRefBySol(obj));
|
||||
},
|
||||
"relation",
|
||||
[](ExtractionRelationContainer &cont, const ExtractionRelation::OsmIDTyped &rel_id)
|
||||
-> const ExtractionRelation & { return cont.GetRelationData(rel_id); });
|
||||
|
||||
Reference in New Issue
Block a user