A basic distance-based routing cost module. Uses the 2D length and a fixed lane change cost to evaluate relations. More...
#include <RoutingCost.h>
Public Member Functions | |
double | getCostLaneChange (const traffic_rules::TrafficRules &, const ConstLanelets &from, const ConstLanelets &) const noexcept override |
Get the cost of the lane change between two adjacent lanelets. More... | |
double | getCostSucceeding (const traffic_rules::TrafficRules &, const ConstLaneletOrArea &from, const ConstLaneletOrArea &to) const override |
Get the cost of the transistion from one to another lanelet. More... | |
RoutingCostDistance (double laneChangeCost, double minLaneChangeLength=0.) | |
Public Member Functions inherited from lanelet::routing::RoutingCost | |
virtual | ~RoutingCost ()=default |
Static Private Member Functions | |
static double | length (const ConstArea &ar) noexcept |
static double | length (const ConstLanelet &ll) noexcept |
Private Attributes | |
const double | laneChangeCost_ |
const double | minChangeLength_ |
A basic distance-based routing cost module. Uses the 2D length and a fixed lane change cost to evaluate relations.
Definition at line 48 of file RoutingCost.h.
|
inlineexplicit |
Distance cost of a lane change [m]. If a lane change requires less than minLaneChangeLength, no lane change will be possible here. Instead, relation between the involved lanelets will be "adjacent".
Definition at line 52 of file RoutingCost.h.
|
inlineoverridevirtualnoexcept |
Get the cost of the lane change between two adjacent lanelets.
trafficRules | TrafficRules module to apply |
from | The lanelet or area the traffic participant is on (assumed to be in the middle) |
to | The lanelet or area the traffic participant is reaching for (reference is the middle again) |
Implements lanelet::routing::RoutingCost.
Definition at line 63 of file RoutingCost.h.
|
inlineoverridevirtual |
Get the cost of the transistion from one to another lanelet.
trafficRules | TrafficRules module to apply |
from | The lanelet or area the traffic participant is on (assumed to be in the middle) |
to | The lanelet or area the traffic participant is reaching for (reference is the middle again) |
Implements lanelet::routing::RoutingCost.
Definition at line 58 of file RoutingCost.h.
|
staticprivatenoexcept |
Definition at line 37 of file RoutingCost.cpp.
|
staticprivatenoexcept |
Definition at line 35 of file RoutingCost.cpp.
|
private |
Definition at line 76 of file RoutingCost.h.
|
private |
Definition at line 76 of file RoutingCost.h.