Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The program is based on the routing graph for the map layout.

Sources:

C++

https://github.com/embedded-software-laboratory/cpm_lab/blob/master/high_level_controller/examples/cpp/central_routing/include/lane_graph_full/lane_graph.hpp

MATLAB

https://github.com/embedded-software-laboratory/cpm_lab/blob/master/tools/map_print/map_print2/lane_graph.mThe original lane graph is defined as followed:

Image Modified

Each node represents the index in the lane graph to receive the information you need for your trajectory:

struct LaneGraph{

vector node_x;
vector node_y;
vector nodes_cos;
vector nodes_sin;
vector edges_start_index;
vector edges_end_index;
vector edges_x;
vector edges_y;
vector edges_sin;
vector edges_cos;
}

The graph edges correspond to center lines, along which a vehicle may drive. Parallel lanes are not modeled, instead extra edges are added for lane changes in discrete locations. All values from your lane graph are already included in the struct which you find in:

https://github.com/embedded-software-laboratory/cpm_lab/blob/master/high_level_controller/examples/cpp/central_routing/include/lane_graph_full/lane_graph.hpp


You can modify this lane graph by using the programs written in Matlab and can be found in:

https://github.com/embedded-software-laboratory/cpm_lab/blob/master/tools/map_print/map_print2/lane_graph.m

Tools include: adding edges, deleting edges, deleting points and selecting points.

Preparation I : Write a class "LaneGraphTools"

...