Skip to content

Bug in get_road_network_mesh function for road markings with type/line definition #110

@MHoehndorf

Description

@MHoehndorf

When there is a broken RoadMark with a defined length and space, this only seems to work correctly for the center lane. For lanes +1 and -1 every visible part of the marking starts at the beginning of the road.

This behaviour occurs in https://odrviewer.io/ and also when creating an OBJ using the 'get_road_network_mesh' function.

Image

Sample:

<road name="unnamed" length="7.72046059612911e+01" id="25" junction="-1">
	<type s="0.00000000000000e+00" type="motorway" />
	<planView>
		<geometry s="0.00000000000000e+00" x="1.00721588211018e+02" y="2.00139090198791e+02" hdg="4.81036123851581e+00" length="1.71262973167747e+00">
			<line />
		</geometry>
		<geometry s="1.71262973167747e+00" x="1.00889110117801e+02" y="1.98434673287207e+02" hdg="4.81036123851581e+00" length="2.50677926237163e+01">
			<spiral curvStart="0.00000000000000e+00" curvEnd="2.85364193282373e-02" />
		</geometry>
		<geometry s="2.67804223553938e+01" x="1.06258229650266e+02" y="1.74094138252316e+02" hdg="5.16803375948764e+00" length="2.53559526372431e+01">
			<arc curvature="2.85364193282373e-02" />
		</geometry>
		<geometry s="5.21363749926369e+01" x="1.24351775079907e+02" y="1.57124087349046e+02" hdg="5.89160185641093e+00" length="2.50677926237163e+01">
			<spiral curvStart="2.85364193282373e-02" curvEnd="0.00000000000000e+00" />
		</geometry>
		<geometry s="7.72041676163533e+01" x="1.48986099916685e+02" y="1.53324201801326e+02" hdg="6.24927437738276e+00" length="4.38344937841500e-04">
			<line />
		</geometry>
	</planView>
	<elevationProfile>
		<elevation s="0.00000000000000e+00" a="0.0" b="0.0" c="0.0" d="0.0" />
	</elevationProfile>
	<lateralProfile />
	<lanes>
		<laneSection s="0.00000000000000e+00">
			<left>
				<lane id="1" type="driving">
					<width sOffset="0.00000000000000e+00" a="3.50000000000000e+00" b="0.00000000000000e+00" c="0.00000000000000e+00" d="0.00000000000000e+00" />
					<roadMark sOffset="0.00000000000000e+00" type="broken" weight="standard" color="standard" material="standard" width="1.19999997317791e-01" laneChange="none">
						<type name="Test1" width="1.19999997317791e-01">
							<line length="5.0" sOffset="0.0" space="5.0" tOffset="0.0" width="1.19999997317791e-01"/>
						</type>
					</roadMark>						
					<speed sOffset="0.00000000000000e+00" max="1.38888888888889e+01" unit="m/s" />
					<height sOffset="0.00000000000000e+00" inner="0.00000000000000e+00" outer="0.00000000000000e+00" />
				</lane>
			</left>
			<center>
				<lane id="0" type="driving">
					<roadMark sOffset="0.00000000000000e+00" type="broken" weight="standard" color="standard" material="standard" width="1.19999997317791e-01" laneChange="none">
						<type name="Test1" width="1.19999997317791e-01">
							<line length="5.0" sOffset="0.0" space="5.0" tOffset="0.0" width="1.19999997317791e-01"/>
						</type>
					</roadMark>
				</lane>
			</center>
			<right>
				<lane id="-1" type="driving">
					<width sOffset="0.00000000000000e+00" a="3.50000000000000e+00" b="0.00000000000000e+00" c="0.00000000000000e+00" d="0.00000000000000e+00" />
					<roadMark sOffset="0.00000000000000e+00" type="broken" weight="standard" color="standard" material="standard" width="1.19999997317791e-01" laneChange="none">
						<type name="Test1" width="1.19999997317791e-01">
							<line length="5.0" sOffset="0.0" space="5.0" tOffset="0.0" width="1.19999997317791e-01"/>
						</type>
					</roadMark>
					<speed sOffset="0.00000000000000e+00" max="1.38888888888889e+01" unit="m/s" />
					<height sOffset="0.00000000000000e+00" inner="0.00000000000000e+00" outer="0.00000000000000e+00" />
				</lane>
			</right>
		</laneSection>
	</lanes>
</road>

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions