maliput
maliput::routing Namespace Reference

Functions

std::vector< api::LaneSRouteDeriveLaneSRoutes (const api::RoadPosition &start, const api::RoadPosition &end, double max_length_m)
 Derives and returns a set of LaneSRoute objects that go from start to end. More...
 
std::vector< std::vector< const maliput::api::Lane * > > FindLaneSequences (const maliput::api::Lane *start, const maliput::api::Lane *end, double max_length_m)
 Finds and returns sequences of lanes that go from a specified start lane to a specified end lane. More...
 

Function Documentation

◆ DeriveLaneSRoutes()

std::vector< api::LaneSRoute > DeriveLaneSRoutes ( const api::RoadPosition start,
const api::RoadPosition end,
double  max_length_m 
)

Derives and returns a set of LaneSRoute objects that go from start to end.

If no routes are found, a vector of length zero is returned. Parameter max_length_m is the maximum length of the intermediate lanes between start and end. See the description of FindLaneSequences() for more details. If start and end are the same lane, a route consisting of one lane is returned regardless of max_length_m.

◆ FindLaneSequences()

std::vector< std::vector< const Lane * > > FindLaneSequences ( const maliput::api::Lane start,
const maliput::api::Lane end,
double  max_length_m 
)

Finds and returns sequences of lanes that go from a specified start lane to a specified end lane.

Only ongoing lanes are searched (adjacent lanes are not). If start and end are the same lane, a sequence of one lane is returned regardless of max_length_m.

Parameters
startThe lane at the start of the sequence.
endThe lane at the end of the sequence.
max_length_mThe maximum length of a sequence in meters, not including start and end. The lengths of start and end are not included because a vehicle may not fully traverse them. Getting from start to end, however, requires a vehicle to fully traverse all intermediate lanes in the sequence, which is why only the sum of their lengths are included in the comparison with this upper bound.
Returns
A vector of lane sequences in which the first lane is start and the last lane is end. An empty vector is returned if no sequences are found.