Closed mchlswyr closed 3 years ago
This issue is resolved in PR #70 with the addition of route_full_lane()
in mapping/LaneletMap.py
, which is a wrapper for lanelet_route.fullLane()
.
When the route passes through a cul-de-sac, then the shortest path will also pass through the cul-de-sac. However, lanlet_route.fullLane()
does not pass through the cul-de-sac. So, if the lane that is returned from lanelet_route.fullLane()
should pass through the cul-de-sac, then we should instead get the lane from lanelet_route.shortestPath()
. This is what route_full_lane()
does.
scenarios/maps/experimental_maps/lanelet2_bathurst.osm
Problem
lanelet_route.fullLane(lanelet)
lanelet
is in the cul-de-sac, then the full lane will just be a part of the cul-de-saclanelet
is outside of the cul-de-sac, then the full lane will end just before the cul-de-sacProblem Before PR #70
lanelet_route.fullLane(lanelet)
is used herelanelet
is in the cul-de-sac, then the full lane plus the padding will be a loop around the cul-de-saclanelet
is outside of the cul-de-sac, then the full lane plus the padding will not enter and exit the cul-de-sacProblem After PR #70
lanelet_route.fullLane(lanelet)
is used herelanelet
is in the cul-de-sac, then the full lane plus the extension will be a loop around the cul-de-saclanelet
is outside of the cul-de-sac, then the extension will be an infinite loop around the cul-de-sac