when using netconvert to import opendrive maps, sumo creates internal junctions and cuts some of the sublanes into 2 pieces. the problem is that traci's distance functions dont work from these lanes and crash the whole server. (simulation.getDistanceRoad and simulation.getDistance2D).
in addition, it seems that the sum of the two new sublanes lengths is larger than the original opendrive lane.
is there a flag in netconvert to disable this internal junction thing but keep the regular junction lanes?
this will solve my problem (i hope)
The internal junctions are necessary to make vehicles behave correctly while passing certain types of intersection. If you manage to crash the server by calling getDistance then this Is a bug that needs fixing.
Please provide example data (network, traci commands) for reproducing the crash.
Having a length mismatch between the total length of internal lanes in .net.xml and opendrive can be caused by using generated internal lane geometry. Try setting option --opendrive.internal-shapes during netconvert import. If that does not solve the problem, please provide an example opendrive file and specify the problematic internal lane.
crash when using traci.simulation.getDistanceRoad()
the attached net.xml file was generated from the .xodr file attached using the following command:
netconvert --opendrive-files hood.xodr -o hood.net.xml
on junction 8, lane :8_7 (left turn from -129.0.00_0 to -133.0.00_0) is divided using internal junction into :8_7 + :8_9.
having a car on lane :8_9 (in the later part of the left turn) try to calculate it's driving distance from the beginning of lane -129.0.00_0. distance = traci.simulation.getDistanceRoad('-129.0.00', 0, ':8_9', 0.2, isDriving=True)
this function call results in a sumo server crash.