Annex D: Additional rules (normative)
Some Rules can not be defined in a chapter, as they cover multiple chapters.
D.1 Smoothness of lanes (normative)
This chapter contains rules regarding lane smoothness.
For vehicles to be able to drive along OpenDRIVE files, the lanes should be smooth. There should be no gaps or kinks. Therefore, this chapter applies only to drivable lanes.
The following @type
of <lanes>
are drivable lanes:
-
driving
-
entry
-
exit
-
onRamp
-
offRamp
-
connectingRamp
-
slipLane
-
biking, only advisory lanes are seen as drivable lanes.
-
border
-
stop
-
restricted
Drivable lanes that are marked as deprecated:
-
HOV
-
bidirectional
-
bus
-
mwyEntry
-
mwyExit
-
roadWorks
-
taxi
These lane types may be configurable in the Checker Tool in the future. These are checked within the ASAM Quality Checker Framework. |
To determine the smoothness of lanes, several different ASAM OpenDRIVE contents needs to be considered. The following elements are relevant, including their respective contents:
-
<planView>
-
<elevationProfile>
-
<lateralProfile>
-
<lanes>
with<laneOffset>
,<width>
or<border>
,<height>
-
@level
attribute -
<elevationGrid>
As critical transitions, all lane sections need to be taken into account. Also relevant are the linkages of roads, lanes and junctions.
D.1.1 Touching Points
In order to determine if a lane is smooth, its touching points needs to be found.
The touching points of a lane are the starting and end positions of the lane at its inner and outer edges. A touching point has a position in x, y, z and a heading, pitch and roll.
Example of touching points.




The yellow point can not have a horizontal gap by definition, as in ASAM OpenDRIVE there are no gaps between lanes horizontally. Also for vertical gaps the yellow point makes no difference for the vertical gap calculations.
In the text below the word 'match' is used. If two touching points 'match', they are not mathematically identical. There will likely be small differences mathematically due to floating points or different formula used within ASAM OpenDRIVE
D.1.2 Horizontal gaps
D.1.3 Horizontal kinks
D.1.3.1 s-direction
-
Two connected drivable lanes shall have no horizontal kinks.
-
There is a kink between two connected lanes in s-direction if the x,y of the touching points of the two connected lanes match, but the headings of the connected lanes do not match.
-
There shall be no kinks in its reference line geometry definition.
-
The reference line direction needs to be taken into account here.
D.1.4 Vertical gaps
D.1.4.1 s-direction
-
Two connected drivable lanes shall have no vertical gaps.
-
There is a gap between two connected lanes in s-direction if the z and/or roll values of the touching points of the two connected lanes do not match.
-
There shall be no vertical gaps in the elevation definition and laterprofile definition of the road.
D.1.5 Vertical kinks
D.1.5.1 s-direction
-
Two connected drivable lanes should have no vertical kinks.
-
There is a kink between two connected lanes in s-direction, if the z values of the touching points of the two connected lanes match, but the pitch values of the touching points of the connected lanes do not match.
D.2 Performance
Rules
-
asam.net:xodr:1.7.0:road.object.valid_s_length_for_repeat: Redundant elements should be avoided, such as elevation or laneSection nodes for consecutive s-coordinates with identical attributes, or multiple geometry nodes for straight lines.
Related topics