Draft: feat: Make intersections a single physical lane

According to the OSI standard:

Logical lane:

  • "on intersections, each driving path is one LogicalLane, but the whole area is one Lane of TYPE_INTERSECTION"

Lane classification:

  • Centerline: "Intersections and non-driving lanes do not have a center line. A vehicle must calculate this individually and depending on the situation."
  • Left/right_adjacent_lane_id: "undefined for type = TYPE_INTERSECTION"
  • Left/right_lane_boundary_id: "is undefined for type = TYPE_INTERSECTION"
  • Free_lane_boundary_id: "Lane with type = TYPE_INTERSECTION use only free lane boundaries."

Before this fix, each logical lane in an intersection had a corresponding physical lane.

With this PR, the data from all physical lanes in an intersection is merged into a single physical lane and the references to incoming/outgoing lanes are redirected accordingly.

Important notes:

  • This PR is just a PoC and the tests that were broken with this change haven't been adjusted.
  • This PR cannot be merged yet since GTGenCore is relying on all physical lanes containing a centerline. This will at the very least break its path finding functionality.
Edited by Pedro Henriques

Merge request reports

Loading