11.6 Lane geometry

Lane geometry are properties that describe the shape of lanes. Lane geometries are defined per lane section but may change within that section.

img
Figure 68. UML model for lane geometry in the Lanes class

Figure 68 shows the UML model for lane geometry in the ASAM OpenDRIVE Lanes class. Examples of lane geometry are lane width, lane border, and lane height.

Rules

The following rules apply to lane geometry:

  • Lane geometries shall be defined relative to the start of the corresponding lane section.

  • A specific lane geometry shall remain valid until another lane geometry of that type is defined or the lane section ends.

  • Lane geometries of identical types shall be defined in ascending order.

11.6.1 Lane width

img
Figure 69. Change of lane width per lane section

Figure 69 shows the change in lane width in positive s-direction, starting at different offset positions.

Elements in UML model

<width> element

In ASAM OpenDRIVE, lane width is represented by the <width> element within the <lane> element.

UML class: t_road_lanes_laneSection_lr_lane_width
XML tag:   <width> (Multiplicity: 1..*)

Lane widths widen or narrow lanes along the t-coordinate within lane sections.

Lane width and lane border elements are mutually exclusive within the same lane group. If both width and lane border elements are present for a lane section in the ASAM OpenDRIVE file, the application must use the information from the <width> elements.

Table 41. Attributes of the <width> element
Name Type Use Unit Description

a

double

required

m

Polynom parameter a, width at @s (ds=0)

b

double

required

1

Polynom parameter b

c

double

required

1/m

Polynom parameter c

d

double

required

1/m²

Polynom parameter d

sOffset

t_grEqZero

required

m

s-coordinate of start position of the <width> element, relative to the position of the preceding <laneSection> element

XML example

Calculation

The width at a given point is calculated with the following polynomial function of the third order:

width (ds) = a + b*ds + c*ds² + d*ds³

where

width

is the width at a given position

a, b, c, d

are the coefficients

ds

is the distance along the road reference line between the start of a new lane width element and the given position

ds restarts at zero for each element. The absolute position of a width value is calculated as follows:

s = ssection + offsetstart + ds

where

s

is the absolute position in the road reference line coordinate system

sSection

is the start position of the preceding lane section element in the track coordinate system

offsetStart

is the offset of the element relative to the preceding lane section

Rules

The following rules apply to lane width:

  • The width of the lane shall be defined for the full length of the lane section. This means that there must be a <width> element for @s="0".

  • The center lane shall have no width, meaning that the <width> element shall not be used for the center lane.

  • The width of a lane shall remain valid until a new <width> element is defined or the lane section ends.

  • A new <width> element shall be defined when the variables of the polynomial function change.

  • <width> elements shall not be used together with <border> elements in the same lane group.

  • <width> elements shall be defined in ascending order according to the s-coordinate.

  • Width (ds) shall be greater than or equal to zero.

Related topics

11.6.2 Lane borders

img
Figure 70. Lane with varying border shape

Figure 70 shows the convention for a lane with varying border shape over a given range.

Elements in UML model

<border> element

In ASAM OpenDRIVE, lane borders are represented by the <border> element within the <lane> element.

UML class: t_road_lanes_laneSection_lr_lane_border
XML tag:   <border> (Multiplicity: 1..*)

Lane borders set the width of lanes. Lane borders describe the outer limits of lanes, independent of the parameters of their inner borders. In this case, inner lanes are defined as lanes which have the same sign for their ID as the lane currently defined, but with a smaller absolute value for their ID.

Especially when road data is derived from automatic measurements, this type of definition is easier than specifying the lane width because it avoids creating many lane sections.

Lane width and lane border elements are mutually exclusive within the same lane group. If both width and lane border elements are present for a lane section in the ASAM OpenDRIVE file, the application shall use the information from the <width> elements.

Table 42. Attributes of the <border> element
Name Type Use Unit Description

a

double

required

m

Polynom parameter a, border position at @s (ds=0)

b

double

required

1

Polynom parameter b

c

double

required

1/m

Polynom parameter c

d

double

required

1/m²

Polynom parameter d

sOffset

t_grEqZero

required

m

s-coordinate of start position of the <border> element , relative to the position of the preceding <laneSection> element

XML example

Calculation

The border position at a given point is calculated with the following polynomial function of the third order:

tborder (ds) = a + b*ds + c*ds² + d*ds³

where

tborder

is the t-position of the border at a given ds-position

a, b, c, d

are the coefficients

ds

is the distance along the road reference line between the start of the element and the given position

ds restarts at zero for each element. The absolute position of a border offset value is calculated by

s = sSection + offsetstart+ ds

where

s

is the absolute position in the road reference line coordinate system

sSection

is the start position of the preceding lane section element in the track coordinate system

offsetStart

is the offset of the element relative to the preceding lane section element

Rules

The following rules apply to lane borders:

  • <width> elements shall not be used together with <border> elements in the same lane group.

  • <border> elements shall not exist together with lane offset.

  • A new <border> element shall be defined when the variables of the polynomial function change.

  • <border> elements shall be defined in ascending order according to the s-coordinate.

  • Lane borders shall not intersect inner lanes.

Related topics

11.6.3 Lane height

Lane height shall be defined along the h-coordinate. Lane height may be used to elevate a lane independent from the road elevation.

img
Figure 71. Lane height

Figure 71 shows that lane height is used to implement small-scale elevation, such as raising pedestrian walkways. Lane height is specified as offset from the road (including elevation, superelevation, shape, cross section surface) in h-direction.

Elements in UML model

<height> element

In ASAM OpenDRIVE, lane height is represented by the <height> element within the <lane> element.

UML class: t_road_lanes_laneSection_lr_lane_height
XML tag:   <height> (Multiplicity: 0..*)

Lane heights elevate lanes along the h-coordinate within a lane section independent from the road elevation.

Lane height is used to implement small-scale elevation such as raising pedestrian walkways. Lane height is specified as offset from the road (including elevation, superelevation, shape, cross section surface) in h-direction.

Table 43. Attributes of the <height> element
Name Type Use Unit Description

inner

double

required

m

Inner offset from road level

outer

double

required

m

Outer offset from road level

sOffset

t_grEqZero

required

m

s-coordinate of start position, relative to the position of the preceding <laneSection> element

XML example

<lane id="-2" type="walking" level="false">
    <link>
        <successor id="-3"/>
    </link>
    <width sOffset="0.0" a="2.0" b="0.0" c="0.0" d="0.0"/>
    <height sOffset="0.0" inner="0.12" outer="0.12"/>
</lane>

Rules

The following rules apply to lane height:

  • To modify the lane height, for example for curbstones, the <height> element shall be used.

  • <height> elements shall be defined in ascending order according to the s-coordinate.

  • The center lane shall not be elevated by lane height.

  • Lane height shall not be used to define road elevation or superelevation.

  • Lane height shall be used for small scale elevation only.

Related topics

11.6.4 Excluding lanes from lateral profile

Single lanes may be excluded from lateral profile to cover use cases like roads with curbstones, borders, or sidewalks.

img
Figure 72. Lanes excluded from road elevation

Figure 72 shows the use of the @level attribute, which excludes the outermost lanes of a road from superelevation.

ASAM OpenDRIVE provides the @level attribute for excluding lanes from lateral profile. When the attribute is set to true for a lane, then this lane is excluded from superelevation, road shape definition and cross section surface definitions of the road. The elevation of the lane stays on the same height as the outer border of the inner connecting lane. For lanes with @level="true" the projection does not change. Changes between lane sections are not recommended.

There may be multiple outer lanes with @level="true", for example, for a bike lane followed by a sidewalk.

Rules

The following rules apply to excluding lanes from road elevation:

  • If a lane has @level="true", then all lanes further outwards shall be only lanes with @level="true" until the edge of the road is reached.

  • There may be multiple outer lanes with @level="true".

Related topics