maliput

A route, possibly spanning multiple (endtoend) lanes.
The sequence of LaneSRanges should be contiguous by either presenting laterally adjacent LaneSRanges, or consecutive LaneSRanges. (In other words, taken as a Lanespace path with r=0 and h=0, it should present a G1continuous curve.)
#include <include/maliput/api/regions.h>
Public Member Functions  
MALIPUT_DEFAULT_COPY_AND_MOVE_AND_ASSIGN (LaneSRoute)  
LaneSRoute ()=default  
Default constructor: constructs an empty route. More...  
LaneSRoute (const std::vector< LaneSRange > &ranges)  
Constructs a LaneSRoute from the given sequence of LaneSRanges. More...  
const std::vector< LaneSRange > &  ranges () const 
Returns the sequence of LaneSRanges. More...  
double  length () const 
Computes the accumulated length of all LaneSRanges. More...  
bool  Intersects (const LaneSRoute &lane_s_route, double tolerance) const 
Determines whether this LaneSRoute intersects with lane_s_route . More...  

default 
Default constructor: constructs an empty route.

explicit 
Constructs a LaneSRoute from the given sequence of LaneSRanges.
ranges  A sequence of LaneSRanges. 
bool Intersects  (  const LaneSRoute &  lane_s_route, 
double  tolerance  
)  const 
Determines whether this LaneSRoute intersects with lane_s_route
.
LaneSRoutes intersection is evaluated first by LaneSRange's LaneId coincidence, then LaneSRange::Intersects() is used.
tolerance
will modify this LaneSRoute's ranges and lane_s_route
's ranges by increasing the maximum and reducing the minimum of each range. When tolerance
is negative, it shrinks both ranges.
lane_s_route  The LaneSRoute to compute the intersection with. 
tolerance  The tolerance to use to evaluate the intersection. 
lane_s_route
intersects this LaneSRoute. double length  (  )  const 
Computes the accumulated length of all LaneSRanges.
MALIPUT_DEFAULT_COPY_AND_MOVE_AND_ASSIGN  (  LaneSRoute  ) 
const std::vector<LaneSRange>& ranges  (  )  const 
Returns the sequence of LaneSRanges.