[Meta] RNDF with multiple lanes in one segment for Maliput

Issue #115 resolved
Agustin Alba Chicar created an issue

Make an example like Dragway in which there are a number of X lanes in one segment and one car on each lane that follows the complete path.

Start by a straight line sample (2 control points with the same tangents) and then move to a sampled piece of an arc and other complex curves.

We need to use ignition-math from: https://bitbucket.org/ekumen/ign-math/commits/a5314ce4bea1a1dd5112ce9f815222e556b29d4a?at=spline_improvements

Comments (15)

  1. Agustin Alba Chicar reporter

    From implementing do_to_left() and do_to_rigth() (whose docs can be seen here) there is a possible corner case. Maliput's API doesn't define a place along the curve where to_left or to_right methods should be evaluated and that's a problem when having a segment like the following:

    left_right_side.png

    Current approach compares the positions of the initial point of the lane (s = 0 in Lane coordinates). That approach is not valid for the previous case, in which the left lane should be null at 1.2.3 and the right lane should be null at 1.2.1. Another case is shown below:

    left_right_case_2.png

    Following the change in direction of the lane 1.1, lane 1.2 is on its left but based on the initial points (positions of 1.1.1 and 1.2.1) lane 1.2 is on 1.1's right.

    I would keep the following approach as the API does not provide any extra information to evaluate it.

  2. Andrés Fortier

    Ah, nice one! I would share this with TRI on Slack to get feedback and in the meantime assume that if we have a lane on the left (or the right), even if it does not hold for the whole lane, we should retrieve that. Also note that we will face a similar issue when dealing with OpenDrive, where lanes can be spawned/merged at any point of a road.

  3. Agustin Alba Chicar reporter

    Created sub-issues:

    • Issue #137 : Find point of minimum distance in a spline to an external point
    • Issue #138 : Split lane based on adjacent lanes in RNDF for Maliput
    • Issue #140: Segment grouping.
    • Issue #148: Refactor segments grouping and lane creation
    • Issue #150: Removal of control points at beginning and ending.
  4. Log in to comment