5.3.1
Description
Abstract
- add RoutingGraphType enum class to specity types of routing graph
- add RoutingGraphs class to manage routing graph and paired traffic rule class
- replace EntityType with RoutingGraphType to specify types of routing graph
Background
The current HDMapUtils class uses the vehicle routing graph by default (even for pedestrians).
As the first step to bettter management of routing graph, this pull-request adds RoutingGraphs class.
In addition, the handling of shoulder lanes varies depending on the function, and there is no consistency.
In the future, I plan to develop a unified handling of shoulder lanes by adding a routing graph that includes road shoulders to the better routing graph management added in this pull request.
Details
HDMapUtils::getNextLaneletIds
- add
type
argument to switch routing graph(default:VEHICLE
for backward compatibility) - two overload has not
type
argument yet, because it treats road shoulder lanelet.
- add
HDMapUtils::getPriviousLaneletIds
- add
type
argument to switch routing graph(default:VEHICLE
for backward compatibility)- one overload has not
type
argument yet, because it treats road shoulder lanelet and has a bug.
- one overload has not
- add
HDMapUtils::getRightLaneletIds
- replace EntityType with RoutingGraphType in argument
HDMapUtils::getLeftLaneletIds
- replace EntityType with RoutingGraphType in argument
HDMapUtils::getRoute
- move inplementation into
HDMapUtils::RoutingGraphs::getRoute
- add
type
argument to switch routing graph(default:VEHICLE
for backward compatibility)
- move inplementation into
References
Destructive Changes
Although there have been some additions to function arguments, all of this has been carefully implemented to ensure backward compatibility.