瀏覽代碼

第一次提交

guolei 1 年之前
父節點
當前提交
874b72e58c

+ 1 - 1
package.json

@@ -90,4 +90,4 @@
     "> 1%",
     "last 2 versions"
   ]
-}
+}

文件差異過大導致無法顯示
+ 3 - 0
public/css/font-awesome.min.css


文件差異過大導致無法顯示
+ 0 - 0
public/css/notyf.min.css


二進制
public/glb/car.glb


文件差異過大導致無法顯示
+ 5 - 0
public/hdr/050.hdr


文件差異過大導致無法顯示
+ 5 - 0
public/hdr/christmas-sky.hdr


二進制
public/hdr/robot_background.hdr


+ 58 - 0
public/index.html

@@ -5,14 +5,72 @@
     <meta http-equiv="X-UA-Compatible" content="IE=edge">
     <meta name="viewport" content="width=device-width,initial-scale=1.0">
     <link rel="icon" href="<%= BASE_URL %>favicon.ico">
+	<link rel="stylesheet" href="./css/notyf.min.css">
+	<link rel="stylesheet" href="./css/font-awesome.min.css">
     <!-- <title><%= htmlWebpackPlugin.options.title %></title> -->
     <title>云仿真测试系统</title>
+	<script src="./js/dat.gui.min.js"></script>
+	<script src="./js/libOpenDrive.js"></script>
+	<script src="./js/notyf.min.js"></script>
+	<script id="idVertexShader" type="x-shader/x-vertex">
+	    attribute vec4 id;
+	    varying vec4 vId;
+	
+	    void main() { 
+	        vId = id;
+	        gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
+	    }
+	</script>
+	
+	<script id="idFragmentShader" type="x-shader/x-vertex">
+	    varying vec4 vId;
+	    
+	    void main() {
+	        gl_FragColor = vId;
+	    }
+	</script>
+	
+	<script id="xyzVertexShader" type="x-shader/x-vertex">
+	    varying vec3 vXYZ;
+	
+	    void main() { 
+	        vXYZ = position;
+	        gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
+	    }
+	</script>
+	
+	<script id="xyzFragmentShader" type="x-shader/x-vertex">
+	    varying vec3 vXYZ;
+	    
+	    void main() {
+	        gl_FragColor = vec4(vXYZ, 1.0);
+	    }
+	</script>
+	
+	<script id="stVertexShader" type="x-shader/x-vertex">
+	    attribute vec2 st;
+	    varying vec2 vST;
+	
+	    void main() { 
+	        vST = st;
+	        gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
+	    }
+	</script>
+	
+	<script id="stFragmentShader" type="x-shader/x-vertex">
+	    varying vec2 vST;
+	    
+	    void main() {
+	        gl_FragColor = vec4(vST.x, vST.y, 0.0, 1.0);
+	    }
+	</script>
   </head>
   <body>
     <noscript>
       <strong>We're sorry but 仿真云平台 doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
     </noscript>
     <div id="app"></div>
+	<script src="./js/controls.js"></script>
     <!-- built files will be auto injected -->
   </body>
 </html>

+ 47 - 0
public/js/controls.js

@@ -0,0 +1,47 @@
+var PARAMS = {
+    load_file : () => { document.getElementById('xodr_file_input').click(); },
+    resolution : 0.3,
+    ref_line : true,
+    roadmarks : true,
+    wireframe : false,
+    spotlight : true,
+    fitView : () => { fitViewToObj(refline_lines); },
+    lateralProfile : true,
+    laneHeight : true,
+    reload_map : () => { reloadOdrMap(); },
+    view_mode : 'Default',
+};
+
+// const gui = new dat.GUI();
+// gui.add(PARAMS, 'load_file').name('📁 打开.xodr');
+// gui.add(PARAMS, 'resolution', { 低 : 1.0, 中等 : 0.3, 高 : 0.02 }).name('📏  细节级别').onChange((val) => {
+//     loadOdrMap(true, false);
+// });
+// gui.add(PARAMS, 'spotlight').name("🔦 开启聚光灯");
+// gui.add(PARAMS, 'fitView').name("⟲ 复位摄像机");
+
+// var gui_view_folder = gui.addFolder('查看');
+// gui_view_folder.add(PARAMS, 'view_mode', { '默认' : 'Default', '轮廓' : 'Outlines' }).name("查看模式").onChange((val) => {
+//     if (val == 'Default') {
+//         road_network_mesh.visible = true;
+//         roadmarks_mesh.visible = PARAMS.roadmarks;
+//     } else if (val == 'Outlines') {
+//         road_network_mesh.visible = false;
+//         roadmarks_mesh.visible = false;
+//     }
+// });
+// gui_view_folder.add(PARAMS, 'ref_line').name("参考线").onChange((val) => {
+//     refline_lines.visible = val;
+// });
+// gui_view_folder.add(PARAMS, 'roadmarks').name("路面标线").onChange((val) => {
+//     roadmarks_mesh.visible = val;
+//     roadmark_outline_lines.visible = val;
+// });
+// gui_view_folder.add(PARAMS, 'wireframe').name("显示线框").onChange((val) => {
+//     road_network_material.wireframe = val;
+// });
+
+// var gui_attributes_folder = gui.addFolder('加载属性');
+// gui_attributes_folder.add(PARAMS, 'lateralProfile').name("横向分布");
+// gui_attributes_folder.add(PARAMS, 'laneHeight').name("车道高度");
+// gui_attributes_folder.add(PARAMS, 'reload_map').name("重新加载地图");

文件差異過大導致無法顯示
+ 12 - 0
public/js/dat.gui.min.js


文件差異過大導致無法顯示
+ 2555 - 0
public/js/libOpenDrive.js


二進制
public/js/libOpenDrive.wasm


文件差異過大導致無法顯示
+ 0 - 0
public/js/notyf.min.js


文件差異過大導致無法顯示
+ 6 - 0
public/js/orbitcontrols.min.js


+ 2784 - 0
public/map/mine3.xodr

@@ -0,0 +1,2784 @@
+<?xml version="1.0" standalone="yes"?>
+<OpenDRIVE>
+    <header revMajor="1" revMinor="4" name="" version="1.00" date="Wed Mar 27 14:06:10 2024" north="0.0000000000000000e+00" south="0.0000000000000000e+00" east="0.0000000000000000e+00" west="0.0000000000000000e+00">
+    </header>
+    <road name="" length="1.0000000000000000e+01" id="7" junction="-1">
+        <link>
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="-2.0000000000000000e+01" y="2.0000000000000000e+01" hdg="-1.5707963267998624e+00" length="1.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.1197787143782139e+03" id="131" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="2" />
+            <successor elementType="junction" elementId="5" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.8000000000000000e+02" y="2.0000000000000000e+02" hdg="0.0000000000000000e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="2.0000000000000000e+01" x="2.9999999781449264e+02" y="2.0000000000000000e+02" hdg="-1.2414513861358500e-12" length="7.8539816339744831e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="9.8539816339744831e+01" x="3.4999999781443057e+02" y="1.4999999999993793e+02" hdg="-1.5707963267998650e+00" length="5.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4853981633974485e+02" x="3.4999999781418217e+02" y="1.0000000437151138e+02" hdg="-1.5707963267986234e+00" length="1.5707963267948966e+02">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="3.0561944901923448e+02" x="4.4999999781418217e+02" y="1.0000000437064206e+02" hdg="1.5707963267948948e+00" length="1.5000000000000000e+02">
+                <line/>
+            </geometry>
+            <geometry s="4.5561944901923448e+02" x="4.4999999781492738e+02" y="2.5000000437076622e+02" hdg="1.5707963267936531e+00" length="1.5707963267948966e+02">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="6.1269908169872417e+02" x="5.4999999781492738e+02" y="2.5000000437014523e+02" hdg="-1.5707963268048326e+00" length="1.5000000000000000e+02">
+                <line/>
+            </geometry>
+            <geometry s="7.6269908169872417e+02" x="5.4999999781343695e+02" y="1.0000000874196708e+02" hdg="-1.5707963268035909e+00" length="1.5707963267948966e+02">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="9.1977871437821386e+02" x="6.4999999781343695e+02" y="1.0000000874060109e+02" hdg="1.5707963267849603e+00" length="1.9999999999999997e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.9325957145940458e+02" id="132" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="3" />
+            <successor elementType="road" elementId="133" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0100000000000000e+03" y="2.0000000000000000e+02" hdg="3.1415926535897931e+00" length="1.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.0000000000000000e+01" x="9.9999999781436850e+02" y="2.0000000000000000e+02" hdg="3.1415926535885514e+00" length="5.2359877559829883e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="6.2359877559829883e+01" x="9.5669872840232767e+02" y="2.2500000000010752e+02" hdg="2.0943951023944365e+00" length="5.2359877559829883e+01">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="1.1471975511965977e+02" x="9.1339746039858210e+02" y="2.5000000000005377e+02" hdg="3.1415926535897931e+00" length="7.8539816339744831e+01">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.9325957145940458e+02" id="133" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="3" />
+            <successor elementType="road" elementId="132" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0100000000000000e+03" y="2.0000000000000000e+02" hdg="3.1415926535897931e+00" length="1.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.0000000000000000e+01" x="1.0000000021855074e+03" y="2.0000000000000000e+02" hdg="-3.1415926535885514e+00" length="5.2359877559829883e+01">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="6.2359877559829883e+01" x="9.5669873277346665e+02" y="1.7500000298012475e+02" hdg="-2.0943951023944365e+00" length="5.2359877559829883e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="1.1471975511965977e+02" x="9.1339746039858221e+02" y="1.5000000298017849e+02" hdg="-3.1415926535897922e+00" length="7.8539816339744831e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.0570796326794898e+03" id="140" junction="-1">
+        <link>
+            <successor elementType="junction" elementId="5" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="3.0000000000000000e+02" y="5.0000000000000000e+01" hdg="3.1415926535897931e+00" length="2.0000000000000000e+02">
+                <line/>
+            </geometry>
+            <geometry s="2.0000000000000000e+02" x="9.9999997814368498e+01" y="5.0000000000000000e+01" hdg="3.1415926535885514e+00" length="7.8539816339744831e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="2.7853981633974485e+02" x="4.9999997814430586e+01" y="1.0000000000006212e+02" hdg="1.5707963267948959e+00" length="2.0000000000000000e+02">
+                <line/>
+            </geometry>
+            <geometry s="4.7853981633974485e+02" x="4.9999997814430728e+01" y="3.0000000000018628e+02" hdg="1.5707963267936544e+00" length="7.8539816339744831e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="5.5707963267948969e+02" x="9.9999997814492858e+01" y="3.5000000000012415e+02" hdg="-9.9342756243459007e-12" length="5.0000000000000000e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.9325957145940458e+02" id="141" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="2" />
+            <successor elementType="road" elementId="142" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.6000000000000000e+02" y="2.0000000000000000e+02" hdg="3.1415926535897931e+00" length="1.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.0000000000000000e+01" x="2.4999999781436847e+02" y="2.0000000000000000e+02" hdg="3.1415926535885514e+00" length="5.2359877559829883e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="6.2359877559829883e+01" x="2.0669872840232779e+02" y="2.2500000000010752e+02" hdg="2.0943951023944365e+00" length="5.2359877559829883e+01">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="1.1471975511965977e+02" x="1.6339746039858215e+02" y="2.5000000000005377e+02" hdg="3.1415926535897931e+00" length="7.8539816339744831e+01">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.9325957145940458e+02" id="142" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="2" />
+            <successor elementType="road" elementId="141" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.6000000000000000e+02" y="2.0000000000000000e+02" hdg="3.1415926535897931e+00" length="1.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.0000000000000000e+01" x="2.5000000218550736e+02" y="2.0000000000000000e+02" hdg="-3.1415926535885514e+00" length="5.2359877559829883e+01">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="6.2359877559829883e+01" x="2.0669873277346665e+02" y="1.7500000298012475e+02" hdg="-2.0943951023944365e+00" length="5.2359877559829883e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="1.1471975511965977e+02" x="1.6339746039858224e+02" y="1.5000000298017849e+02" hdg="-3.1415926535897922e+00" length="7.8539816339744831e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.9325957145940458e+02" id="151" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="1" />
+            <successor elementType="road" elementId="152" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0400000000000000e+03" y="5.5000000000000000e+02" hdg="0.0000000000000000e+00" length="1.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.0000000000000000e+01" x="1.0500000021856315e+03" y="5.5000000000000000e+02" hdg="1.2414513861358500e-12" length="5.2359877559829883e+01">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="6.2359877559829883e+01" x="1.0933012715976722e+03" y="5.7500000000010755e+02" hdg="1.0471975511965976e+00" length="1.3089969389957471e+02">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.9325957145940458e+02" id="152" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="1" />
+            <successor elementType="road" elementId="151" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0400000000000000e+03" y="5.5000000000000000e+02" hdg="0.0000000000000000e+00" length="1.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.0000000000000000e+01" x="1.0499999978144926e+03" y="5.5000000000000000e+02" hdg="-1.2414513861358500e-12" length="5.2359877559829883e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="6.2359877559829883e+01" x="1.0933012672264092e+03" y="5.2499999850999131e+02" hdg="-1.0471975512015632e+00" length="1.3089969389957471e+02">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.0841593462708120e+03" id="159" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="1" />
+            <successor elementType="junction" elementId="6" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0200000000000000e+03" y="5.5000000000000000e+02" hdg="3.1415926535897931e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="2.0000000000000000e+01" x="1.0000000000000000e+03" y="5.5000000000000000e+02" hdg="3.1415926535897931e+00" length="1.5000000000000000e+02">
+                <line/>
+            </geometry>
+            <geometry s="1.7000000000000000e+02" x="8.5000000218550849e+02" y="5.5000000000000000e+02" hdg="-3.1415926535885514e+00" length="1.5707971359132225e+02">
+                <arc curvature="1.9999989697990817e-02"/>
+            </geometry>
+            <geometry s="3.2707971359132227e+02" x="8.5000000218563264e+02" y="4.4999994848992753e+02" hdg="4.9681148084346208e-12" length="3.0000000000000000e+02">
+                <line/>
+            </geometry>
+            <geometry s="6.2707971359132227e+02" x="1.1499999999998770e+03" y="4.4999994849141797e+02" hdg="3.7265746044568004e-12" length="1.5707963267948966e+02">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="7.8415934627081197e+02" x="1.1500000000002494e+03" y="3.4999994849141797e+02" hdg="3.1415926535897931e+00" length="3.0000000000000000e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.0000000000000000e+01" id="162" junction="1">
+        <link>
+            <predecessor elementType="road" elementId="151" contactPoint="start" />
+            <successor elementType="road" elementId="159" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0400000000000000e+03" y="5.5000000000000000e+02" hdg="3.1415926535897931e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.0000000000000000e+01" id="165" junction="1">
+        <link>
+            <predecessor elementType="road" elementId="159" contactPoint="start" />
+            <successor elementType="road" elementId="152" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0200000000000000e+03" y="5.5000000000000000e+02" hdg="0.0000000000000000e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.0556194490192347e+03" id="166" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="4" />
+            <successor elementType="junction" elementId="5" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.7000000000000000e+02" y="5.0000000000000000e+02" hdg="3.1415926535897931e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="2.0000000000000000e+01" x="2.5000000000000000e+02" y="5.0000000000000000e+02" hdg="3.1415926535897931e+00" length="1.5000000000000000e+02">
+                <line/>
+            </geometry>
+            <geometry s="1.7000000000000000e+02" x="9.9999997814368498e+01" y="5.0000000000000000e+02" hdg="3.1415926535885514e+00" length="1.5707963267948966e+02">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="3.2707963267948969e+02" x="9.9999997814492716e+01" y="6.0000000000000000e+02" hdg="-9.9342756243459007e-12" length="5.0000000000000006e+02">
+                <line/>
+            </geometry>
+            <geometry s="8.2707963267948981e+02" x="5.9999999841129568e+02" y="5.9999999999751594e+02" hdg="-1.1175060876666976e-11" length="7.8539816339744831e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="9.0561944901923459e+02" x="6.4999999841073691e+02" y="5.4999999999695717e+02" hdg="-1.5707963268097984e+00" length="1.5000000000000000e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.9325957145940458e+02" id="167" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="4" />
+            <successor elementType="road" elementId="168" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.9000000000000000e+02" y="5.0000000000000000e+02" hdg="0.0000000000000000e+00" length="1.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.0000000000000000e+01" x="3.0000000218563150e+02" y="5.0000000000000000e+02" hdg="1.2414513861358500e-12" length="5.2359877559829883e+01">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="6.2359877559829883e+01" x="3.4330127159767221e+02" y="5.2500000000010755e+02" hdg="1.0471975511965976e+00" length="1.3089969389957471e+02">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.9325957145940458e+02" id="168" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="4" />
+            <successor elementType="road" elementId="167" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.9000000000000000e+02" y="5.0000000000000000e+02" hdg="0.0000000000000000e+00" length="1.0000000000000000e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.0000000000000000e+01" x="2.9999999781449264e+02" y="5.0000000000000000e+02" hdg="-1.2414513861358500e-12" length="5.2359877559829883e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="6.2359877559829883e+01" x="3.4330126722640921e+02" y="4.7499999850999137e+02" hdg="-1.0471975512015632e+00" length="1.3089969389957471e+02">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.0000000000000000e+01" id="171" junction="4">
+        <link>
+            <predecessor elementType="road" elementId="166" contactPoint="start" />
+            <successor elementType="road" elementId="168" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.7000000000000000e+02" y="5.0000000000000000e+02" hdg="0.0000000000000000e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.0000000000000000e+01" id="174" junction="4">
+        <link>
+            <predecessor elementType="road" elementId="167" contactPoint="start" />
+            <successor elementType="road" elementId="166" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.9000000000000000e+02" y="5.0000000000000000e+02" hdg="3.1415926535897931e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="5.0000000000000000e+01" id="175" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="5" />
+            <successor elementType="junction" elementId="6" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="7.0000000000000000e+02" y="3.5000000000000000e+02" hdg="0.0000000000000000e+00" length="5.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092354309025481e+01" id="178" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="131" contactPoint="end" />
+            <successor elementType="road" elementId="175" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="6.4999999781542419e+02" y="3.0000000874060106e+02" hdg="1.5707963267948966e+00" length="1.4593745713159024e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593745713159024e+01" x="6.4999999781542419e+02" y="3.1459375445376008e+02" hdg="1.5707963267948966e+00" length="1.9634950652510192e+01">
+                <spiral curvStart="-0.0000000000000000e+00" curvEnd="-4.0000006992482080e-02"/>
+            </geometry>
+            <geometry s="3.4228696365669215e+01" x="6.5254203406506997e+02" y="3.3392806361188894e+02" hdg="1.1780972450974139e+00" length="1.9634950652510184e+01">
+                <arc curvature="-4.0000006992482080e-02"/>
+            </geometry>
+            <geometry s="5.3863647018179400e+01" x="6.6607193420353531e+02" y="3.4745796375035422e+02" hdg="3.9269908169996537e-01" length="1.9634950652510192e+01">
+                 <spiral curvStart="-4.0000006992482080e-02" curvEnd="-0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498597670689591e+01" x="6.8540624336166411e+02" y="3.5000000000000000e+02" hdg="0.0000000000000000e+00" length="1.4593756638335890e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="9.9999991256356111e+01" id="181" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="131" contactPoint="end" />
+            <successor elementType="road" elementId="166" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="6.4999999781542419e+02" y="3.0000000874060106e+02" hdg="1.5707963208566733e+00" length="9.9999991256356111e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092352123361451e+01" id="184" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="131" contactPoint="end" />
+            <successor elementType="road" elementId="140" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="6.4999999781542419e+02" y="3.0000000874060106e+02" hdg="1.5707963267948966e+00" length="1.4593745712297277e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593745712297277e+01" x="6.4999999781542419e+02" y="3.1459375445289834e+02" hdg="1.5707963267948966e+00" length="1.9634950651459260e+01">
+                <spiral curvStart="0.0000000000000000e+00" curvEnd="4.0000006994369987e-02"/>
+            </geometry>
+            <geometry s="3.4228696363756541e+01" x="6.4745796156593019e+02" y="3.3392806360999617e+02" hdg="1.9634954084898952e+00" length="1.9634950651459267e+01">
+                <arc curvature="4.0000006994369987e-02"/>
+            </geometry>
+            <geometry s="5.3863647015215804e+01" x="6.3392806142825191e+02" y="3.4745796374780900e+02" hdg="2.7488935718823755e+00" length="1.9634950651459260e+01">
+                 <spiral curvStart="4.0000006994369987e-02" curvEnd="0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498597666675067e+01" x="6.1459375227117926e+02" y="3.4999999999749508e+02" hdg="3.1415926535798571e+00" length="1.4593754456686383e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092352123701517e+01" id="187" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="140" contactPoint="end" />
+            <successor elementType="road" elementId="131" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="5.9999999781449287e+02" y="3.4999999999764009e+02" hdg="-1.4901857525728701e-11" length="1.4593754457211162e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593754457211162e+01" x="6.1459375227170403e+02" y="3.4999999999749508e+02" hdg="-1.4901857525728701e-11" length="1.9634950651388365e+01">
+                <spiral curvStart="-0.0000000000000000e+00" curvEnd="-4.0000006994767440e-02"/>
+            </geometry>
+            <geometry s="3.4228705108599527e+01" x="6.3392806142870290e+02" y="3.4745796374780241e+02" hdg="-3.9269908171238477e-01" length="1.9634950651388372e+01">
+                <arc curvature="-4.0000006994767440e-02"/>
+            </geometry>
+            <geometry s="5.3863655759987900e+01" x="6.4745796156626079e+02" y="3.3392806360997565e+02" hdg="-1.1780972451098330e+00" length="1.9634950651388365e+01">
+                 <spiral curvStart="-4.0000006994767440e-02" curvEnd="-0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498606411376272e+01" x="6.4999999781556915e+02" y="3.1459375445292631e+02" hdg="-1.5707963268097949e+00" length="1.4593745712325244e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.0000000218550713e+02" id="190" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="140" contactPoint="end" />
+            <successor elementType="road" elementId="175" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="5.9999999781449287e+02" y="3.4999999999764009e+02" hdg="2.3599113258492752e-11" length="1.0000000218550713e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092359377591166e+01" id="193" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="140" contactPoint="end" />
+            <successor elementType="road" elementId="166" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="5.9999999781449287e+02" y="3.4999999999764009e+02" hdg="-1.4901857525728701e-11" length="1.4593748858545382e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593748858545382e+01" x="6.1459374667303825e+02" y="3.4999999999749508e+02" hdg="-1.4901857525728701e-11" length="1.9634954084898489e+01">
+                <spiral curvStart="0.0000000000000000e+00" curvEnd="3.9999999999950617e-02"/>
+            </geometry>
+            <geometry s="3.4228702943443871e+01" x="6.3392805921103991e+02" y="3.5254203669121858e+02" hdg="3.9269908168134116e-01" length="1.9634954084898482e+01">
+                <arc curvature="3.9999999999950617e-02"/>
+            </geometry>
+            <geometry s="5.3863657028342352e+01" x="6.4745796171490622e+02" y="3.6607193919461457e+02" hdg="1.1780972450763114e+00" length="1.9634954084898489e+01">
+                 <spiral curvStart="3.9999999999950617e-02" curvEnd="0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498611113240841e+01" x="6.4999999840902910e+02" y="3.8540625173260685e+02" hdg="1.5707963267800020e+00" length="1.4593748264350324e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092359377906490e+01" id="196" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="166" contactPoint="end" />
+            <successor elementType="road" elementId="140" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="6.4999999840924647e+02" y="3.9999999999695717e+02" hdg="-1.5707963267998624e+00" length="1.4593748264294959e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593748264294959e+01" x="6.4999999840924647e+02" y="3.8540625173266221e+02" hdg="-1.5707963267998624e+00" length="1.9634954084792287e+01">
+                <spiral curvStart="-0.0000000000000000e+00" curvEnd="-4.0000000000546342e-02"/>
+            </geometry>
+            <geometry s="3.4228702349087243e+01" x="6.4745796171524876e+02" y="3.6607193919486593e+02" hdg="-1.9634954084998304e+00" length="1.9634954084792295e+01">
+                <arc curvature="-4.0000000000546342e-02"/>
+            </geometry>
+            <geometry s="5.3863656433879541e+01" x="6.3392805921160641e+02" y="3.5254203669132454e+02" hdg="-2.7488935719022494e+00" length="1.9634954084792287e+01">
+                 <spiral curvStart="-4.0000000000546342e-02" curvEnd="-0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498610518671825e+01" x="6.1459374667372754e+02" y="3.4999999999749508e+02" hdg="3.1415926535798571e+00" length="1.4593748859234665e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="9.9999991256356111e+01" id="199" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="166" contactPoint="end" />
+            <successor elementType="road" elementId="131" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="6.4999999840924647e+02" y="3.9999999999695717e+02" hdg="-1.5707963327380856e+00" length="9.9999991256356111e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092360371945560e+01" id="202" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="166" contactPoint="end" />
+            <successor elementType="road" elementId="175" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="6.4999999840924647e+02" y="3.9999999999695717e+02" hdg="-1.5707963267998624e+00" length="1.4593748263555767e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593748263555767e+01" x="6.4999999840924647e+02" y="3.8540625173340140e+02" hdg="-1.5707963267948966e+00" length="1.9634954083679226e+01">
+                <spiral curvStart="0.0000000000000000e+00" curvEnd="4.0000000002434248e-02"/>
+            </geometry>
+            <geometry s="3.4228702347234993e+01" x="6.5254203510310026e+02" y="3.6607193919663814e+02" hdg="-1.1780972450986553e+00" length="1.9634954083679219e+01">
+                <arc curvature="4.0000000002434248e-02"/>
+            </geometry>
+            <geometry s="5.3863656430914212e+01" x="6.6607193760585767e+02" y="3.5254203669381354e+02" hdg="-3.9269908170368950e-01" length="1.9634954083679226e+01">
+                 <spiral curvStart="4.0000000002434248e-02" curvEnd="0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498610514593437e+01" x="6.8540625014264788e+02" y="3.5000000000000000e+02" hdg="0.0000000000000000e+00" length="1.4593749857352122e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092360372261595e+01" id="205" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="175" contactPoint="start" />
+            <successor elementType="road" elementId="166" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="7.0000000000000000e+02" y="3.5000000000000000e+02" hdg="3.1415926535897931e+00" length="1.4593749858041861e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593749858041861e+01" x="6.8540625014195814e+02" y="3.5000000000000000e+02" hdg="3.1415926535848273e+00" length="1.9634954083572961e+01">
+                <spiral curvStart="-0.0000000000000000e+00" curvEnd="-4.0000000003029973e-02"/>
+            </geometry>
+            <geometry s="3.4228703941614825e+01" x="6.6607193760531777e+02" y="3.5254203669395957e+02" hdg="2.7488935718848628e+00" length="1.9634954083572968e+01">
+                <arc curvature="-4.0000000003029973e-02"/>
+            </geometry>
+            <geometry s="5.3863658025187789e+01" x="6.5254203510274101e+02" y="3.6607193919680498e+02" hdg="1.9634954084824510e+00" length="1.9634954083572961e+01">
+                 <spiral curvStart="-4.0000000003029973e-02" curvEnd="-0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498612108760753e+01" x="6.4999999840902910e+02" y="3.8540625173345632e+02" hdg="1.5707963267800020e+00" length="1.4593748263500856e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.0000000218550713e+02" id="208" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="175" contactPoint="start" />
+            <successor elementType="road" elementId="140" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="7.0000000000000000e+02" y="3.5000000000000000e+02" hdg="-3.1415926535711600e+00" length="1.0000000218550713e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092354308685671e+01" id="211" junction="5">
+        <link>
+            <predecessor elementType="road" elementId="175" contactPoint="start" />
+            <successor elementType="road" elementId="131" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="7.0000000000000000e+02" y="3.5000000000000000e+02" hdg="3.1415926535897931e+00" length="1.4593756637811225e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593756637811225e+01" x="6.8540624336218877e+02" y="3.5000000000000000e+02" hdg="3.1415926535897931e+00" length="1.9634950652581090e+01">
+                <spiral curvStart="0.0000000000000000e+00" curvEnd="4.0000006992084627e-02"/>
+            </geometry>
+            <geometry s="3.4228707290392315e+01" x="6.6607193420398630e+02" y="3.4745796375036076e+02" hdg="-2.7488935718947944e+00" length="1.9634950652581097e+01">
+                <arc curvature="4.0000006992084627e-02"/>
+            </geometry>
+            <geometry s="5.3863657942973411e+01" x="6.5254203406540046e+02" y="3.3392806361190935e+02" hdg="-1.9634954085023146e+00" length="1.9634950652581090e+01">
+                 <spiral curvStart="4.0000006992084627e-02" curvEnd="0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498608595554501e+01" x="6.4999999781556915e+02" y="3.1459375445373223e+02" hdg="-1.5707963268097949e+00" length="1.4593745713131170e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.0000000000026270e+02" id="220" junction="6">
+        <link>
+            <predecessor elementType="road" elementId="159" contactPoint="end" />
+            <successor elementType="road" elementId="175" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="8.5000000000024943e+02" y="3.4999994849141802e+02" hdg="3.1415921385039733e+00" length="1.0000000000026270e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.0000000000026270e+02" id="229" junction="6">
+        <link>
+            <predecessor elementType="road" elementId="175" contactPoint="end" />
+            <successor elementType="road" elementId="159" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="7.5000000000000000e+02" y="3.5000000000000000e+02" hdg="-5.1509078513589657e-07" length="1.0000000000026270e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.0000000000000000e+01" id="233" junction="2">
+        <link>
+            <predecessor elementType="road" elementId="131" contactPoint="start" />
+            <successor elementType="road" elementId="141" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.8000000000000000e+02" y="2.0000000000000000e+02" hdg="3.1415926535897931e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.0000000000000000e+01" id="236" junction="2">
+        <link>
+            <predecessor elementType="road" elementId="142" contactPoint="start" />
+            <successor elementType="road" elementId="131" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="2.6000000000000000e+02" y="2.0000000000000000e+02" hdg="0.0000000000000000e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.0000000000000000e+01" id="238" junction="-1">
+        <link>
+            <predecessor elementType="junction" elementId="3" />
+            <successor elementType="road" elementId="239" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0300000000000000e+03" y="2.0000000000000000e+02" hdg="0.0000000000000000e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.3561944901923448e+02" id="239" junction="-1">
+        <link>
+            <predecessor elementType="road" elementId="238" contactPoint="end" />
+            <successor elementType="road" elementId="240" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0500000021856315e+03" y="2.0000000000000000e+02" hdg="1.2414513861358500e-12" length="7.8539816339744831e+01">
+                <arc curvature="2.0000000000000000e-02"/>
+            </geometry>
+            <geometry s="7.8539816339744831e+01" x="1.1000000021855694e+03" y="2.5000000000018625e+02" hdg="1.5707963267948963e+00" length="1.5707963267948966e+02">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.5000000000000000e+02" id="240" junction="-1">
+        <link>
+            <predecessor elementType="road" elementId="239" contactPoint="end" />
+            <successor elementType="road" elementId="241" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.2000000021855694e+03" y="2.5000000000006210e+02" hdg="-1.5707963268048193e+00" length="1.5000000000000000e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="7.8539816339744831e+01" id="241" junction="-1">
+        <link>
+            <predecessor elementType="road" elementId="240" contactPoint="end" />
+            <successor elementType="road" elementId="242" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.2000000021848259e+03" y="9.9999995628365042e+01" hdg="-1.5707963268048193e+00" length="7.8539816339744831e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="3.0000000000000000e+02" id="242" junction="-1">
+        <link>
+            <predecessor elementType="road" elementId="241" contactPoint="end" />
+            <successor elementType="road" elementId="243" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.1500000021842677e+03" y="4.9999995628923273e+01" hdg="3.1415926535798699e+00" length="3.0000000000000000e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="7.8539816339744831e+01" id="243" junction="-1">
+        <link>
+            <predecessor elementType="road" elementId="242" contactPoint="end" />
+            <successor elementType="road" elementId="244" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="8.4999999999814008e+02" y="4.9999995631900262e+01" hdg="3.1415926535798704e+00" length="7.8539816339744831e+01">
+                <arc curvature="-2.0000000000000000e-02"/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="1.9999999999999997e+02" id="244" junction="-1">
+        <link>
+            <predecessor elementType="road" elementId="243" contactPoint="end" />
+            <successor elementType="junction" elementId="6" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="7.9999999999869829e+02" y="9.9999995632458450e+01" hdg="1.5707963267849718e+00" length="1.9999999999999997e+02">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <left>
+                    <lane id="2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </left>
+                <center>
+                    <lane id="0" type="none" level="false">
+                        <link>
+                        </link>
+                        <roadMark sOffset="0.0000000000000000e+00" type="broken" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="both" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <roadMark sOffset="0.0000000000000000e+00" type="solid" weight="standard" color="standard" width="1.3000000000000000e-01" laneChange="none" height="1.9999999552965164e-02">
+                        </roadMark>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.0000000000000000e+01" id="247" junction="3">
+        <link>
+            <predecessor elementType="road" elementId="133" contactPoint="start" />
+            <successor elementType="road" elementId="238" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0100000000000000e+03" y="2.0000000000000000e+02" hdg="0.0000000000000000e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="2.0000000000000000e+01" id="250" junction="3">
+        <link>
+            <predecessor elementType="road" elementId="238" contactPoint="start" />
+            <successor elementType="road" elementId="132" contactPoint="start" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="1.0300000000000000e+03" y="2.0000000000000000e+02" hdg="3.1415926535897931e+00" length="2.0000000000000000e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="1"/>
+                            <successor id="-1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="2"/>
+                            <successor id="-2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092322868749676e+01" id="253" junction="6">
+        <link>
+            <predecessor elementType="road" elementId="244" contactPoint="end" />
+            <successor elementType="road" elementId="159" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="8.0000000000068326e+02" y="2.9999999563245842e+02" hdg="1.5707963267948966e+00" length="1.4593734505032160e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593734505032160e+01" x="8.0000000000068326e+02" y="3.1459373013749058e+02" hdg="1.5707963267948966e+00" length="1.9634935572692928e+01">
+                <spiral curvStart="-0.0000000000000000e+00" curvEnd="-4.0000037712867885e-02"/>
+            </geometry>
+            <geometry s="3.4228670077725084e+01" x="8.0254203429799873e+02" y="3.3392802444664017e+02" hdg="1.1780972450974141e+00" length="1.9634935572692921e+01">
+                <arc curvature="-4.0000037712867885e-02"/>
+            </geometry>
+            <geometry s="5.3863605650418009e+01" x="8.1607192404540376e+02" y="3.4745791419407880e+02" hdg="3.9269908169996537e-01" length="1.9634935572692928e+01">
+                 <spiral curvStart="-4.0000037712867885e-02" curvEnd="-0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498541223110934e+01" x="8.3540621835461070e+02" y="3.4999994849141802e+02" hdg="0.0000000000000000e+00" length="1.4593781645638728e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092363151514093e+01" id="256" junction="6">
+        <link>
+            <predecessor elementType="road" elementId="244" contactPoint="end" />
+            <successor elementType="road" elementId="175" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="8.0000000000068326e+02" y="2.9999999563245842e+02" hdg="1.5707963267948966e+00" length="1.4593752631379459e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593752631379459e+01" x="8.0000000000068326e+02" y="3.1459374826383788e+02" hdg="1.5707963267948966e+00" length="1.9634954085204516e+01">
+                <spiral curvStart="0.0000000000000000e+00" curvEnd="3.9999999999453403e-02"/>
+            </geometry>
+            <geometry s="3.4228706716583972e+01" x="7.9745796330664791e+02" y="3.3392806080204383e+02" hdg="1.9634954084923790e+00" length="1.9634954085204509e+01">
+                <arc curvature="3.9999999999453403e-02"/>
+            </geometry>
+            <geometry s="5.3863660801788484e+01" x="7.8392806080278433e+02" y="3.4745796330594095e+02" hdg="2.7488935718898277e+00" length="1.9634954085204516e+01">
+                 <spiral curvStart="3.9999999999453403e-02" curvEnd="0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498614886992996e+01" x="7.6459374826452108e+02" y="3.5000000000000000e+02" hdg="3.1415926535897931e+00" length="1.4593748264521082e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092322868410662e+01" id="259" junction="6">
+        <link>
+            <predecessor elementType="road" elementId="159" contactPoint="end" />
+            <successor elementType="road" elementId="244" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="8.5000000000024943e+02" y="3.4999994849141802e+02" hdg="3.1415926535897931e+00" length="1.4593781645115314e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593781645115314e+01" x="8.3540621835513411e+02" y="3.4999994849141802e+02" hdg="3.1415926535897931e+00" length="1.9634935572763663e+01">
+                <spiral curvStart="0.0000000000000000e+00" curvEnd="4.0000037712471341e-02"/>
+            </geometry>
+            <geometry s="3.4228717217878980e+01" x="8.1607192404585373e+02" y="3.4745791419408533e+02" hdg="-2.7488935718947887e+00" length="1.9634935572763670e+01">
+                <arc curvature="4.0000037712471341e-02"/>
+            </geometry>
+            <geometry s="5.3863652790642647e+01" x="8.0254203429835229e+02" y="3.3392802444671787e+02" hdg="-1.9634954085022969e+00" length="1.9634935572763663e+01">
+                 <spiral curvStart="4.0000037712471341e-02" curvEnd="0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498588363406313e+01" x="8.0000000000082798e+02" y="3.1459373013746279e+02" hdg="-1.5707963268097789e+00" length="1.4593734505004363e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <road name="" length="8.8092363151735057e+01" id="262" junction="6">
+        <link>
+            <predecessor elementType="road" elementId="175" contactPoint="end" />
+            <successor elementType="road" elementId="244" contactPoint="end" />
+        </link>
+        <planView>
+            <geometry s="0.0000000000000000e+00" x="7.5000000000000000e+02" y="3.5000000000000000e+02" hdg="0.0000000000000000e+00" length="1.4593748264693545e+01">
+                <line/>
+            </geometry>
+            <geometry s="1.4593748264693545e+01" x="7.6459374826469355e+02" y="3.5000000000000000e+02" hdg="0.0000000000000000e+00" length="1.9634954085328442e+01">
+                <spiral curvStart="-0.0000000000000000e+00" curvEnd="-3.9999999999453403e-02"/>
+            </geometry>
+            <geometry s="3.4228702350021990e+01" x="7.8392806080307514e+02" y="3.4745796330590917e+02" hdg="-3.9269908169996182e-01" length="1.9634954085328435e+01">
+                <arc curvature="-3.9999999999453403e-02"/>
+            </geometry>
+            <geometry s="5.3863656435350421e+01" x="7.9745796330692883e+02" y="3.3392806080192133e+02" hdg="-1.1780972451023661e+00" length="1.9634954085328442e+01">
+                 <spiral curvStart="-3.9999999999453403e-02" curvEnd="-0.0000000000000000e+00"/>
+            </geometry>
+            <geometry s="7.3498610520678866e+01" x="8.0000000000082798e+02" y="3.1459374826351461e+02" hdg="-1.5707963268097789e+00" length="1.4593752631056191e+01">
+                <line/>
+            </geometry>
+        </planView>
+        <elevationProfile>
+            <elevation s="0.0000000000000000e+00" a="0.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+        </elevationProfile>
+        <lateralProfile>
+        </lateralProfile>
+        <lanes>
+            <laneSection s="0.0000000000000000e+00">
+                <center>
+                    <lane id="0" type="driving" level="false">
+                        <link>
+                        </link>
+                    </lane>
+                </center>
+                <right>
+                    <lane id="-1" type="driving" level="false">
+                        <link>
+                            <predecessor id="-1"/>
+                            <successor id="1"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="1.5000000000000000e+01" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                    </lane>
+                    <lane id="-2" type="shoulder" level="false">
+                        <link>
+                            <predecessor id="-2"/>
+                            <successor id="2"/>
+                        </link>
+                        <width sOffset="0.0000000000000000e+00" a="5.0000000000000000e+00" b="0.0000000000000000e+00" c="0.0000000000000000e+00" d="0.0000000000000000e+00"/>
+                        <height sOffset="0.0000000000000000e+00" inner="0.0000000000000000e+00" outer="0.0000000000000000e+00"/>
+                    </lane>
+                </right>
+            </laneSection>
+        </lanes>
+        <objects>
+        </objects>
+        <signals>
+        </signals>
+        <surface>
+        </surface>
+    </road>
+    <junction name="" id="1">
+        <connection id="0" incomingRoad="151" connectingRoad="162" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+        </connection>
+        <connection id="1" incomingRoad="159" connectingRoad="165" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+        </connection>
+    </junction>
+    <junction name="" id="4">
+        <connection id="0" incomingRoad="166" connectingRoad="171" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+        </connection>
+        <connection id="1" incomingRoad="167" connectingRoad="174" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+        </connection>
+    </junction>
+    <junction name="" id="5">
+        <connection id="0" incomingRoad="131" connectingRoad="178" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+            <laneLink from="-2" to="-2"/>
+        </connection>
+        <connection id="1" incomingRoad="131" connectingRoad="181" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+        </connection>
+        <connection id="2" incomingRoad="131" connectingRoad="184" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+        </connection>
+        <connection id="3" incomingRoad="140" connectingRoad="187" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+            <laneLink from="-2" to="-2"/>
+        </connection>
+        <connection id="4" incomingRoad="140" connectingRoad="190" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+        </connection>
+        <connection id="5" incomingRoad="140" connectingRoad="193" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+        </connection>
+        <connection id="6" incomingRoad="166" connectingRoad="196" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+            <laneLink from="-2" to="-2"/>
+        </connection>
+        <connection id="7" incomingRoad="166" connectingRoad="199" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+        </connection>
+        <connection id="8" incomingRoad="166" connectingRoad="202" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+        </connection>
+        <connection id="9" incomingRoad="175" connectingRoad="205" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+            <laneLink from="2" to="-2"/>
+        </connection>
+        <connection id="10" incomingRoad="175" connectingRoad="208" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+        </connection>
+        <connection id="11" incomingRoad="175" connectingRoad="211" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+        </connection>
+    </junction>
+    <junction name="" id="6">
+        <connection id="0" incomingRoad="244" connectingRoad="253" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+            <laneLink from="-2" to="-2"/>
+        </connection>
+        <connection id="1" incomingRoad="244" connectingRoad="256" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+        </connection>
+        <connection id="2" incomingRoad="159" connectingRoad="220" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+            <laneLink from="-2" to="-2"/>
+        </connection>
+        <connection id="3" incomingRoad="159" connectingRoad="259" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+        </connection>
+        <connection id="4" incomingRoad="175" connectingRoad="262" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+            <laneLink from="-2" to="-2"/>
+        </connection>
+        <connection id="5" incomingRoad="175" connectingRoad="229" contactPoint="start">
+            <laneLink from="-1" to="-1"/>
+        </connection>
+    </junction>
+    <junction name="" id="2">
+        <connection id="0" incomingRoad="131" connectingRoad="233" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+            <laneLink from="2" to="-2"/>
+        </connection>
+        <connection id="1" incomingRoad="142" connectingRoad="236" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+            <laneLink from="2" to="-2"/>
+        </connection>
+    </junction>
+    <junction name="" id="3">
+        <connection id="0" incomingRoad="133" connectingRoad="247" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+            <laneLink from="2" to="-2"/>
+        </connection>
+        <connection id="1" incomingRoad="238" connectingRoad="250" contactPoint="start">
+            <laneLink from="1" to="-1"/>
+            <laneLink from="2" to="-2"/>
+        </connection>
+    </junction>
+</OpenDRIVE>

+ 12 - 13
src/axios/filter.js

@@ -75,19 +75,18 @@ axios.interceptors.request.use(function (config) {
 });
 // 添加响应拦截器
 axios.interceptors.response.use(function (response) {
-	console.log(response)
-	if(response.config.url.includes("/simulation/resource/server/menu/getMyMenuTree")){
-		response.data.info[3].children.push({
-			"id": "d75a9d044eec4dc7b9133256c7e976af",
-			"name": "多模式仿真",
-			"router": "/multimodeSimulation",
-			"icon": null,
-			"sort": 3,
-			"parentId": "268190b28633425da0744966976c4e22",
-			"visible": "1",
-			"children": null
-		})
-	}
+	// if(response.config.url.includes("/simulation/resource/server/menu/getMyMenuTree")){
+	// 	response.data.info[3].children.push({
+	// 		"id": "d75a9d044eec4dc7b9133256c7e976af",
+	// 		"name": "多模式仿真",
+	// 		"router": "/multimodeSimulation",
+	// 		"icon": null,
+	// 		"sort": 3,
+	// 		"parentId": "268190b28633425da0744966976c4e22",
+	// 		"visible": "1",
+	// 		"children": null
+	// 	})
+	// }
     // 对响应数据处理
     tryHideFullScreenLoading();
     if (response && (response.status == 200)) {

+ 20 - 14
src/views/workManagement/multimodeSimulation.vue

@@ -8,14 +8,16 @@
 			</el-select>
 		</div>
 		<div class="content">
-			<div class="map"></div>
+			<div class="map">
+				<open-drive></open-drive>
+			</div>
 			<div class="table">
 				<div class="table-operate">
 					<el-button class="btn" type="primary">添加</el-button>
 					<el-button class="btn" type="info">设为仿真视角</el-button>
 				</div>
 				<el-table class="table-content" ref="multipleTable" :data="tableData" tooltip-effect="dark"
-					style="width: 100%" @selection-change="handleSelectionChange">
+					style="width: 100%">
 					<el-table-column type="selection" width="55">
 					</el-table-column>
 					<el-table-column label="选择车辆" width="120">
@@ -48,9 +50,10 @@
 </template>
 
 <script>
+	import OpenDrive from "@/views/workManagement/openDriver";
 	export default {
 		name: "MultimodeSimulation", // 工作管理
-		components: {},
+		components: {OpenDrive},
 		data() {
 			return {
 				options: [{
@@ -126,20 +129,18 @@
 		height: 36.5rem;
 		display: flex;
 		flex-direction: row;
-
-		.map {
-			flex: 1;
-			background-color: aqua;
-		}
-
-		.table {
-			flex: 1;
-			background-color: antiquewhite;
-		}
-
 	}
 
+	.map {
+		flex: 1;
+		background-color: aqua;
+		position: relative;
+	}
 
+	.table {
+		flex: 1;
+		background-color: antiquewhite;
+	}
 	.table-operate {
 		height: 3.1rem;
 		display: flex;
@@ -164,6 +165,11 @@
 		margin: 1rem;
 	}
 	
+	.open-drive{
+		width: 100%;
+		height: 100%;
+	}
+	
 	::v-deep .mini-btn{
 		width: 1rem !important;
 	}

+ 1198 - 0
src/views/workManagement/openDriver.vue

@@ -0,0 +1,1198 @@
+<template>
+      <div id="ThreeJS" class="three_div"></div>
+</template>
+
+<script>
+	import * as THREE from "three";
+	import {
+		OrbitControls
+	} from "three/examples/jsm/controls/OrbitControls";
+	import {
+		RGBELoader
+	} from "three/examples/jsm/loaders/RGBELoader";
+	import {
+		Reflector
+	} from "three/examples/jsm/objects/Reflector";
+	import {
+		GLTFLoader
+	} from "three/examples/jsm/loaders/GLTFLoader";
+	import {
+		DRACOLoader
+	} from "three/examples/jsm/loaders/DRACOLoader";
+	import {
+		Line2
+	} from "three/examples/jsm/lines/Line2";
+	// import gsap from "gsap";
+	// import * as CANNON from "cannon-es";
+
+	import * as echarts from "echarts";
+
+	export default {
+		name: "OpenDrive",
+		components: {
+			// vueQr,
+			// glHome,
+		},
+		data() {
+			return {
+				position: [
+					119.11, 12.65, 0, 107.94, 5.02, 0, 58.54, -6.55, 0, 2.96, -18.14, 0,
+					-5.68, -15.92, 0, -15.26, -17.45, 0, -17.59, -16.22, 0, -19.98, -14.53,
+					0, -22.03, -12.75, 0, -23.79, -8.2, 0, -26.57, 0.89, 0, -52.05, 100.97,
+					0, -47.34, 115.73, 0, -40.4, 122.3, 0, -36.06, 123.67, 0, 23.43, 141.03,
+					0, 235.4, 186.38, 0, 247.38, 188.33, 0, 255.22, 187.49, 0, 261.95,
+					177.78, 0, 284, 89, 0, 293, 56, 0, 119.11, 12.65, 0,
+				],
+				lights: [
+					-295.65, 117.04, -408.97, -114.11, -272.34, -220.81, 250.93, 194.26,
+					338.92, 65.23, -3.58, -16.76,
+				],
+				start: function() {},
+				startPoint: false,
+				carStart: false,
+				carmeDownW: 300,
+				carmeDownH: 280,
+				count: 1,
+				isMove: false,
+			};
+		},
+		methods: {
+			cleanPoint() {
+				//清除打点
+				this.startPoint = true;
+				this.position = [];
+				console.log(this.position);
+			},
+			pointEnabled() {
+				// this.allowAllow = true;
+				this.cleanPoint();
+			},
+		},
+		mounted() {
+			let that = this;
+			let carmeDownW = this.carmeDownW;
+			let carmeDownH = this.carmeDownH;
+			/* globals */
+			//版本问题,打印THREE,发现并没有VertexColors,于是查找资料中才发现把vertexColors: THREE.VertexColors设置为vertexColors: true即可
+			THREE.vertexColors = true;
+			console.log(1)
+			let curvePath = null;
+			var ModuleOpenDrive = null;
+			var OpenDriveMap = null;
+			var refline_lines = null;
+			var road_network_mesh = null;
+			var roadmarks_mesh = null;
+			var lane_outline_lines = null;
+			var roadmark_outline_lines = null;
+			var ground_grid = null;
+			var disposable_objs = [];
+			var mouse = new THREE.Vector2();
+			var spotlight_info = document.getElementById("spotlight_info");
+			//相交车道ID
+			var INTERSECTED_LANE_ID = 0xffffffff;
+			var INTERSECTED_ROADMARK_ID = 0xffffffff;
+			//聚集光是否暂停
+			var spotlight_paused = false;
+			//鼠标点击的三位坐标
+			var mouse3D = [];
+			var car3D = null;
+			var lights = this.lights;
+			var isMove = this.isMove;
+			var carStart = this.carStart;
+			var wheels = [];
+			var line = null;
+			const COLORS = {
+				road: 1.0,
+				roadmark: 1.0,
+				road_object: 0.9,
+				lane_outline: 0xae52d4,
+				roadmark_outline: 0xffffff,
+				ref_line: 0x69f0ae,
+				background: 0x444444,
+				lane_highlight: 0xff3030,
+				roadmark_highlight: 0xff0000,
+			};
+
+			//自适应大小
+			window.addEventListener("resize", onWindowResize, false);
+
+			//监听鼠标位置改变
+			window.addEventListener("mousemove", onDocumentMouseMove, false);
+			window.addEventListener("dblclick", onDocumentMouseDbClick, false);
+			window.addEventListener("click", recordPathPoint, false);
+			/* notifactions */
+			const notyf = new Notyf({
+				duration: 3000,
+				position: {
+					x: "left",
+					y: "bottom"
+				},
+				types: [{
+					type: "info",
+					background: "#607d8b",
+					icon: false
+				}],
+			});
+
+			//创建渲染器
+			const renderer = new THREE.WebGLRenderer({
+				antialias: true, //抗锯齿,防失真
+				sortObjects: false, //定义渲染器是否应对对象进行排序
+				//对数深度缓冲区,防止模型闪烁
+				logarithmicdepthbuffer: true,
+			});
+			//开启投影阴影
+			renderer.shadowMap.enabled = true;
+			//设置渲染器渲染区域
+			renderer.setSize(window.innerWidth, window.innerHeight);
+			//渲染
+			document.getElementById("ThreeJS").appendChild(renderer.domElement);
+
+			//创建场景
+			const scene = new THREE.Scene();
+			//创建透视相机
+			const camera = new THREE.PerspectiveCamera(
+				75,
+				window.innerWidth / window.innerHeight,
+				0.1,
+				100000
+			);
+			//让Z轴朝上+
+			camera.up.set(0, 0, 1); /* Coordinate system with Z pointing up */
+			//创建控制器
+			const controls = new OrbitControls(camera, renderer.domElement);
+			//const controls = new THREE.OrbControls(camera, renderer.domElement);
+			controls.addEventListener("start", () => {
+				/**
+				 * 拖动开始停止开启聚集光和停止旋转
+				 */
+				spotlight_paused = true; //聚集光暂停
+				//controls.autoRotate = false; //是否旋转
+				isMove = true;
+			});
+			controls.addEventListener("end", () => {
+				//拖动结束聚集光关闭并且开启旋转
+				spotlight_paused = false; //聚集光开始
+				//将其设为true,以自动围绕目标旋转。请注意,如果它被启用,你必须在你的动画循环里调用
+				// controls.autoRotate = true;//开启旋转
+				isMove = false;
+			});
+			//controls.autoRotate = true; //开启旋转
+			//创建平行光
+			let light;
+			for (let index = 0; index < lights.length / 2; index++) {
+				light = new THREE.DirectionalLight(0xffffff, 0.6);
+				light.position.set(lights[2 * index], lights[2 * index + 1], 5);
+				scene.add(light);
+				//平行光方向指向原点(0,0,0)
+				scene.add(light.target);
+			}
+
+			//添加坐标轴辅助器
+			const axesHepler = new THREE.AxesHelper(5);
+			scene.add(axesHepler);
+
+			const rgbeLoader = new RGBELoader();
+			//加载模型车
+			let wheelPhysicalMaterial = new THREE.MeshPhysicalMaterial({
+				color: 0xff0000,
+				metalness: 1,
+				roughness: 0.5,
+				transmission: 1,
+				transparent: true,
+				clearcoatRoughness: 0,
+			});
+
+			let carBodyPhysicalMaterial = new THREE.MeshPhysicalMaterial({
+				color: 0xff0000,
+				metalness: 1,
+				roughness: 0.5,
+				clearcoat: 1,
+				clearcoatRoughness: 0,
+			});
+
+			let carFrontPhysicalMaterial = new THREE.MeshPhysicalMaterial({
+				color: 0xff0000,
+				metalness: 1,
+				roughness: 0.5,
+				clearcoat: 1,
+				clearcoatRoughness: 0,
+			});
+
+			let carHoodPhysicalMaterial = new THREE.MeshPhysicalMaterial({
+					color: 0xff0000,
+					metalness: 1,
+					roughness: 0.5,
+					clearcoat: 1,
+					clearcoatRoughness: 0,
+				}),
+				carGlassPhysicalMaterial = new THREE.MeshPhysicalMaterial({
+					color: 0xffffff,
+					metalness: 0,
+					roughness: 0,
+					transmission: 1,
+					transparent: true,
+				});
+			const gltfLoader = new GLTFLoader().setPath(
+				"/"
+			);
+			// const gltfLoader = new GLTFLoader().setPath(
+			//   "@static/"
+			// );
+			const dracoLoader = new DRACOLoader();
+			dracoLoader.setDecoderPath("/gltf/");
+			gltfLoader.setDRACOLoader(dracoLoader);
+			const wheelNames = ["柱体001", "柱体002", "柱体003", "柱体007"];
+			gltfLoader.loadAsync("glb/car.glb").then((gltf) => {
+				//映射-折射映射,不设置将不会透明
+				car3D = gltf.scene;
+				let index = 0;
+				gltf.scene.traverse((child) => {
+					if (child.isMesh) {
+						const wheelNames = ["左后轮毂", "右后轮毂", "前轮毂"];
+						// if(!wheelNames.includes(child.name)){
+						//   child.visible = false;
+						// }
+						if (wheelNames.includes(child.name)) {
+							child.material = wheelPhysicalMaterial;
+							wheels.push(child);
+						}
+						if (child.name.includes("Mesh002")) {
+							child.material = carBodyPhysicalMaterial;
+						}
+						if (child.name.includes("前脸")) {
+							child.material = carFrontPhysicalMaterial;
+						}
+						if (child.name.includes("引擎盖_1")) {
+							child.material = carHoodPhysicalMaterial;
+						}
+						if (child.name.includes("挡风玻璃")) {
+							child.material = carGlassPhysicalMaterial;
+						}
+					}
+					index++;
+				});
+				gltf.scene.rotation.z = Math.PI;
+				gltf.scene.rotation.x = -Math.PI / 2;
+				gltf.scene.position.z += 0.05;
+				scene.add(gltf.scene);
+			});
+
+			//选择车道线场景
+			const lane_picking_scene = new THREE.Scene();
+			//车道线场景背景颜色
+			lane_picking_scene.background = new THREE.Color(0xffffff);
+			//路标场景
+			const roadmark_picking_scene = new THREE.Scene();
+			//路标场景背景颜色
+			roadmark_picking_scene.background = new THREE.Color(0xffffff);
+			//坐标场景
+			const xyz_scene = new THREE.Scene();
+			//坐标场景背景颜色
+			xyz_scene.background = new THREE.Color(0xffffff);
+			const st_scene = new THREE.Scene();
+			st_scene.background = new THREE.Color(0xffffff);
+
+			//创建渲染器
+			const lane_picking_texture = new THREE.WebGLRenderTarget(1, 1, {
+				type: THREE.FloatType,
+			});
+			const roadmark_picking_texture = new THREE.WebGLRenderTarget(1, 1, {
+				type: THREE.FloatType,
+			});
+			const xyz_texture = new THREE.WebGLRenderTarget(1, 1, {
+				type: THREE.FloatType,
+			});
+			const st_texture = new THREE.WebGLRenderTarget(1, 1, {
+				type: THREE.FloatType,
+			});
+			//获取顶点着色器
+			const idVertexShader =
+				document.getElementById("idVertexShader").textContent;
+			console.log(idVertexShader)
+			const idFragmentShader =
+				document.getElementById("idFragmentShader").textContent;
+			const xyzVertexShader =
+				document.getElementById("xyzVertexShader").textContent;
+			const xyzFragmentShader =
+				document.getElementById("xyzFragmentShader").textContent;
+			const stVertexShader =
+				document.getElementById("stVertexShader").textContent;
+			const stFragmentShader =
+				document.getElementById("stFragmentShader").textContent;
+			//设置车道中轴线颜色
+			const refline_material = new THREE.LineBasicMaterial({
+				color: COLORS.ref_line,
+				//color: 0x0000ff,
+			});
+
+			const road_network_material = new THREE.MeshPhongMaterial({
+				//vertexColors: THREE.VertexColors,
+				//版本问题,打印THREE,发现并没有VertexColors,于是查找资料中才发现把vertexColors: THREE.VertexColors设置为vertexColors: true即可
+				vertexColors: THREE.VertexColors,
+				wireframe: PARAMS.wireframe, //显示现况
+				shininess: 20.0,
+				transparent: true,
+				opacity: 0.4,
+			});
+
+			//道路线
+			const lane_outlines_material = new THREE.LineBasicMaterial({
+				color: COLORS.lane_outline,
+			});
+
+			//外侧线
+			const roadmark_outlines_material = new THREE.LineBasicMaterial({
+				color: COLORS.roadmark_outline,
+			});
+			const id_material = new THREE.ShaderMaterial({
+				vertexShader: idVertexShader,
+				fragmentShader: idFragmentShader,
+			});
+			const xyz_material = new THREE.ShaderMaterial({
+				vertexShader: xyzVertexShader,
+				fragmentShader: xyzFragmentShader,
+			});
+			const st_material = new THREE.ShaderMaterial({
+				vertexShader: stVertexShader,
+				fragmentShader: stFragmentShader,
+			});
+			const roadmarks_material = new THREE.MeshBasicMaterial({
+				vertexColors: THREE.VertexColors,
+			});
+			const road_objects_material = new THREE.MeshBasicMaterial({
+				vertexColors: THREE.VertexColors,
+				side: THREE.DoubleSide,
+				wireframe: true,
+			});
+
+			/* load WASM + odr map */
+			libOpenDrive().then((Module) => {
+				ModuleOpenDrive = Module;
+				fetch("/map/mine3.xodr").then(
+					(file_data) => {
+						file_data.text().then((file_text) => {
+							//加载数据文件
+							loadFile(file_text, false);
+						});
+					}
+				);
+			});
+
+			function onFileSelect(file) {
+				let file_reader = new FileReader();
+				file_reader.onload = () => {
+					loadFile(file_reader.result, true);
+				};
+				file_reader.readAsText(file);
+			}
+
+			function loadFile(file_text, clear_map) {
+				//清除文件系统中保存的文件节点
+				if (clear_map) ModuleOpenDrive["FS_unlink"]("./data.xodr");
+				//将文件数据转为节点保存到文件系统本地指定的文件目录,支持读写
+				ModuleOpenDrive["FS_createDataFile"](
+					".",
+					"data.xodr",
+					file_text,
+					true,
+					true
+				);
+				//OpenDriveMap不为null,则已经打开过,需要删除地图重新尝试打开
+				if (OpenDriveMap) OpenDriveMap.delete();
+
+				//打开驱动地图
+				OpenDriveMap = new ModuleOpenDrive.OpenDriveMap(
+					"./data.xodr",
+					PARAMS.lateralProfile,
+					PARAMS.laneHeight,
+					true
+				);
+				loadOdrMap(clear_map);
+			}
+
+			function reloadOdrMap() {
+				if (OpenDriveMap) OpenDriveMap.delete();
+				OpenDriveMap = new ModuleOpenDrive.OpenDriveMap(
+					"./data.xodr",
+					PARAMS.lateralProfile,
+					PARAMS.laneHeight,
+					true
+				);
+				loadOdrMap(true, false);
+			}
+
+			function loadOdrMap(clear_map = true, fit_view = true) {
+				//web浏览器内置api,精度微秒级,performance.now是浏览器(Web API)提供的方法,不同浏览器获取到的精度不同。Date.now是Javascript内置方法,差异主要在于浏览器遵循的ECMAScript规范。
+				const t0 = performance.now();
+				//是否清除地图
+				if (clear_map) {
+					road_network_mesh.userData.odr_road_network_mesh.delete();
+					scene.remove(
+						road_network_mesh,
+						roadmarks_mesh,
+						road_objects_mesh,
+						refline_lines,
+						lane_outline_lines,
+						roadmark_outline_lines,
+						ground_grid
+					);
+					lane_picking_scene.remove(...lane_picking_scene.children);
+					roadmark_picking_scene.remove(...roadmark_picking_scene.children);
+					xyz_scene.remove(...xyz_scene.children);
+					st_scene.remove(...st_scene.children);
+					for (let obj of disposable_objs) obj.dispose();
+				}
+
+				/**
+				 * 道路中间s方向的线
+				 */
+				//获取参考线矩形几何体
+				const reflines_geom = new THREE.BufferGeometry();
+				//获取驱动中参考线数据信息
+				const odr_refline_segments = OpenDriveMap.get_refline_segments(
+					parseFloat(PARAMS.resolution)
+				);
+				//设置参考线坐标点
+				reflines_geom.setAttribute(
+					"position",
+					new THREE.Float32BufferAttribute(
+						getStdVecEntries(odr_refline_segments.vertices).flat(),
+						3
+					)
+				);
+				//设置参考线坐标点索引
+				reflines_geom.setIndex(
+					getStdVecEntries(odr_refline_segments.indices, true)
+				);
+				//创建参考线物体
+				refline_lines = new THREE.LineSegments(reflines_geom, refline_material);
+				refline_lines.renderOrder = 10;
+				//设置是否可见
+				refline_lines.visible = PARAMS.ref_line;
+				refline_lines.matrixAutoUpdate = false;
+				disposable_objs.push(reflines_geom);
+				//将参考线加入场景中
+				scene.add(refline_lines);
+
+				/*
+				 *道路面
+				 */
+				//根据细节级别获取道路网格物体PARAMS.resolution 默认0.3中等级别
+				const odr_road_network_mesh = OpenDriveMap.get_mesh(
+					parseFloat(PARAMS.resolution)
+				);
+				//获取所有路段的车道(车道id为 -2, -1, 0, 1, 2)
+				const odr_lanes_mesh = odr_road_network_mesh.lanes_mesh;
+				//获取所有路段车道点集构建道路物体
+				const road_network_geom = get_geometry(odr_lanes_mesh);
+				//设置道路颜色
+				road_network_geom.attributes.color.array.fill(COLORS.road);
+				//获取所有路段的车道的起始位置索引
+				//将索引作为车道开始和结束信息
+				for (const [vert_start_idx, _] of getStdMapEntries(
+						odr_lanes_mesh.lane_start_indices
+					)) {
+					//根据起始位置索引获取车道信息
+					const vert_idx_interval =
+						odr_lanes_mesh.get_idx_interval_lane(vert_start_idx);
+					//结束索引减去起始索引的长度就是该路段该车道的长度
+					const vert_count = vert_idx_interval[1] - vert_idx_interval[0];
+					//索引数据压缩
+					const vert_start_idx_encoded = encodeUInt32(vert_start_idx);
+					const attr_arr = new Float32Array(vert_count * 4);
+					for (let i = 0; i < vert_count; i++)
+						attr_arr.set(
+							vert_start_idx_encoded, //存入的数据集合,批量存入,底层会打散
+							i * 4 //数组起始索引位置
+						);
+
+					road_network_geom.attributes.id.array.set(
+						attr_arr,
+						vert_idx_interval[0] * 4
+					);
+				}
+
+				disposable_objs.push(road_network_geom);
+				road_network_mesh = new THREE.Mesh(
+					road_network_geom,
+					road_network_material
+				);
+				road_network_mesh.renderOrder = 0;
+				road_network_mesh.userData = {
+					odr_road_network_mesh
+				};
+				road_network_mesh.matrixAutoUpdate = false;
+				road_network_mesh.visible = !(PARAMS.view_mode == "Outlines");
+				scene.add(road_network_mesh);
+
+				/**
+				 * 选中被选中的车道进行离屏渲染
+				 */
+				const lane_picking_mesh = new THREE.Mesh(road_network_geom, id_material);
+				lane_picking_mesh.matrixAutoUpdate = false;
+				lane_picking_scene.add(lane_picking_mesh);
+
+				/* xyz coords road network mesh */
+				const xyz_mesh = new THREE.Mesh(road_network_geom, xyz_material);
+				xyz_mesh.matrixAutoUpdate = false;
+				xyz_scene.add(xyz_mesh);
+
+				/* st coords road network mesh */
+				const st_mesh = new THREE.Mesh(road_network_geom, st_material);
+				st_mesh.matrixAutoUpdate = false;
+				st_scene.add(st_mesh);
+
+				/**
+				 * 车道线宽度区域填充,由于车道线有宽度,宽度区域颜色填充
+				 */
+				const odr_roadmarks_mesh = odr_road_network_mesh.roadmarks_mesh;
+				const roadmarks_geom = get_geometry(odr_roadmarks_mesh);
+				roadmarks_geom.attributes.color.array.fill(COLORS.roadmark);
+				for (const [vert_start_idx, _] of getStdMapEntries(
+						odr_roadmarks_mesh.roadmark_type_start_indices
+					)) {
+					const vert_idx_interval =
+						odr_roadmarks_mesh.get_idx_interval_roadmark(vert_start_idx);
+					const vert_count = vert_idx_interval[1] - vert_idx_interval[0];
+					const vert_start_idx_encoded = encodeUInt32(vert_start_idx);
+					const attr_arr = new Float32Array(vert_count * 4);
+					for (let i = 0; i < vert_count; i++)
+						attr_arr.set(
+							vert_start_idx_encoded, //数组
+							i * 4 //偏移量,每次偏移step:数组大小
+						);
+					roadmarks_geom.attributes.id.array.set(
+						attr_arr,
+						vert_idx_interval[0] * 4
+					);
+				}
+				disposable_objs.push(roadmarks_geom);
+
+				/* roadmarks mesh */
+				roadmarks_mesh = new THREE.Mesh(roadmarks_geom, roadmarks_material);
+				roadmarks_mesh.matrixAutoUpdate = false;
+				roadmarks_mesh.visible = !(PARAMS.view_mode == "Outlines") && PARAMS.roadmarks;
+				scene.add(roadmarks_mesh);
+
+				//离屏渲染车道线宽度区域
+				const roadmark_picking_mesh = new THREE.Mesh(roadmarks_geom, id_material);
+				roadmark_picking_mesh.matrixAutoUpdate = false;
+				roadmark_picking_scene.add(roadmark_picking_mesh);
+
+				/* road objects geometry */
+				const odr_road_objects_mesh = odr_road_network_mesh.road_objects_mesh;
+				const road_objects_geom = get_geometry(odr_road_objects_mesh);
+				road_objects_geom.attributes.color.array.fill(COLORS.road_object);
+				for (const [vert_start_idx, _] of getStdMapEntries(
+						odr_road_objects_mesh.road_object_start_indices
+					)) {
+					const vert_idx_interval =
+						odr_roadmarks_mesh.get_idx_interval_roadmark(vert_start_idx);
+					const vert_count = vert_idx_interval[1] - vert_idx_interval[0];
+					const vert_start_idx_encoded = encodeUInt32(vert_start_idx);
+					const attr_arr = new Float32Array(vert_count * 4);
+					for (let i = 0; i < vert_count; i++)
+						attr_arr.set(vert_start_idx_encoded, i * 4);
+					roadmarks_geom.attributes.id.array.set(
+						attr_arr,
+						vert_idx_interval[0] * 4
+					);
+				}
+				disposable_objs.push(road_objects_geom);
+
+				/* road objects mesh */
+				let road_objects_mesh = new THREE.Mesh(
+					road_objects_geom,
+					road_objects_material
+				);
+				road_objects_mesh.matrixAutoUpdate = false;
+				scene.add(road_objects_mesh);
+
+				/**
+				 * 车道轮廓线
+				 * 道路轮廓线包含车道线,由于每条车道线有宽度,车道轮廓线即为车道线的中心线
+				 * id为0的车道轮廓线和参考线s重合
+				 */
+				const lane_outlines_geom = new THREE.BufferGeometry();
+				lane_outlines_geom.setAttribute(
+					"position",
+					road_network_geom.attributes.position
+				);
+				lane_outlines_geom.setIndex(
+					getStdVecEntries(odr_lanes_mesh.get_lane_outline_indices(), true)
+				);
+				lane_outline_lines = new THREE.LineSegments(
+					lane_outlines_geom,
+					lane_outlines_material
+				);
+				lane_outline_lines.renderOrder = 9;
+				disposable_objs.push(lane_outlines_geom);
+				//scene.add(lane_outline_lines);
+
+				/**
+				 * 道路轮廓线
+				 */
+				const roadmark_outlines_geom = new THREE.BufferGeometry();
+				roadmark_outlines_geom.setAttribute(
+					"position",
+					roadmarks_geom.attributes.position
+				);
+				roadmark_outlines_geom.setIndex(
+					getStdVecEntries(
+						odr_roadmarks_mesh.get_roadmark_outline_indices(),
+						true
+					)
+				);
+				roadmark_outline_lines = new THREE.LineSegments(
+					roadmark_outlines_geom,
+					roadmark_outlines_material
+				);
+				roadmark_outline_lines.renderOrder = 8;
+				roadmark_outline_lines.matrixAutoUpdate = false;
+				disposable_objs.push(roadmark_outlines_geom);
+				roadmark_outline_lines.visible = PARAMS.roadmarks;
+				scene.add(roadmark_outline_lines);
+
+				/* fit view and camera */
+				const bbox_reflines = new THREE.Box3().setFromObject(refline_lines);
+				const max_diag_dist = bbox_reflines.min.distanceTo(bbox_reflines.max);
+				camera.far = max_diag_dist * 1.5;
+				//controls.autoRotate = fit_view;
+
+				if (fit_view) {
+					camera.position.set(0, 0, 50);
+					// fitViewToBbox(bbox_reflines);
+					//fitViewToBbox(bbox_reflines);
+				}
+
+				/**
+				 * 网格
+				 */
+				let bbox_center_pt = new THREE.Vector3();
+				bbox_reflines.getCenter(bbox_center_pt);
+				ground_grid = new THREE.GridHelper(
+					max_diag_dist,
+					max_diag_dist / 10,
+					0x2f2f2f,
+					0x2f2f2f
+				);
+				ground_grid.geometry.rotateX(Math.PI / 2);
+				ground_grid.position.set(
+					bbox_center_pt.x,
+					bbox_center_pt.y,
+					bbox_reflines.min.z - 0.1
+				);
+				disposable_objs.push(ground_grid.geometry);
+				scene.add(ground_grid);
+
+				const rgbeLoader = new RGBELoader();
+				rgbeLoader.loadAsync("hdr/christmas-sky.hdr").then((loader) => {
+					loader.mapping = THREE.EquirectangularRefractionMapping;
+					const sphereGeometry = new THREE.SphereBufferGeometry(1000);
+					const sphereMetrial = new THREE.MeshBasicMaterial({
+						color: 0xffffff,
+						map: loader,
+					});
+					const sphereMesh = new THREE.Mesh(sphereGeometry, sphereMetrial);
+					sphereMesh.geometry.scale(1, 1, -1);
+					sphereMesh.rotation.x = Math.PI / 2;
+					scene.add(sphereMesh);
+				});
+
+				/**
+				 * 灯光
+				 */
+				light.position.set(
+					bbox_reflines.min.x,
+					bbox_reflines.min.y,
+					bbox_reflines.max.z + max_diag_dist
+				);
+				light.target.position.set(
+					bbox_center_pt.x,
+					bbox_center_pt.y,
+					bbox_center_pt.z
+				);
+				light.position.needsUpdate = true;
+				light.target.position.needsUpdate = true;
+				light.target.updateMatrixWorld();
+
+				const t1 = performance.now();
+				console.log(
+					"Heap size: " + ModuleOpenDrive.HEAP8.length / 1024 / 1024 + " mb"
+				);
+
+
+				//删除数据冗余,避免造成内存泄漏
+				odr_roadmarks_mesh.delete();
+				odr_lanes_mesh.delete();
+				animate();
+			}
+
+			// 创建clock
+			const clock = new THREE.Clock();
+			const positionMap = new Map();
+
+			function animate() {
+				//控制电脑帧频,防止刷屏过快导致的页面刷3D数据刷新过快 控制每秒30次
+				setTimeout(function() {
+					requestAnimationFrame(animate);
+				}, 1000 / 30);
+				// 获取总共耗时
+				const time = clock.getElapsedTime();
+				let t = time % 80;
+				t /= 80;
+				if (that.startPoint == false && that.carStart == true) {
+					//轮毂旋转
+					if (wheels.length > 0) {
+						let wheel;
+						for (let index = 0; index < wheels.length; index++) {
+							wheel = wheels[index];
+							let position = positionMap.get(index);
+							if (position == null) {
+								//先记录车轮的原始位置
+								position = wheel.position;
+								positionMap.set(index, wheel.position);
+							}
+							//将车轮放置原点
+							wheel.geometry.center();
+							//让车在原点进行旋转
+							wheel.rotateZ((60 / 360) * Math.PI);
+							//根据车子的初始位置进行复位
+							wheel.position.set(position.x, position.y, position.z);
+						}
+					}
+
+					// 通过point设置模型dd位置
+					const point = curvePath.getPointAt(t);
+					// 获取点的切线
+					const tangent = curvePath.getTangentAt(t);
+					const lookAt = tangent.add(point);
+				}
+
+				controls.update();
+
+				camera.setViewOffset(
+					renderer.domElement.width, //画布的宽度
+					renderer.domElement.height, //画布的高度
+					(renderer.domElement.width / 2) | 0, //画布坐标系中,相机的x坐标位置
+					(renderer.domElement.height / 2) | 0, //画布坐标系中,相机的y坐标位置
+					1, //副相机的宽度
+					1 //副相机的高度
+				);
+				//离屏渲染
+				renderer.setRenderTarget(lane_picking_texture);
+				renderer.render(lane_picking_scene, camera);
+
+				renderer.setRenderTarget(roadmark_picking_texture);
+				renderer.render(roadmark_picking_scene, camera);
+
+				renderer.setRenderTarget(xyz_texture);
+				renderer.render(xyz_scene, camera);
+
+				renderer.setRenderTarget(st_texture);
+				renderer.render(st_scene, camera);
+
+				const lane_id_pixel_buffer = new Float32Array(4);
+				//拾取颜色
+				//console.log(mouse.x, window.innerHeight - mouse.y)
+				renderer.readRenderTargetPixels(
+					lane_picking_texture,
+					0, //相机截图左上角为坐标原点,相对于截图左上角而言的渲染起始点x坐标
+					0, //相机截图左上角为坐标原点,相对于截图左上角而言的渲染起始点y坐标
+					1, //渲染宽度范围
+					1, //渲染高度范围
+					lane_id_pixel_buffer
+				);
+				const roadmark_id_pixel_buffer = new Float32Array(4);
+				renderer.readRenderTargetPixels(
+					roadmark_picking_texture,
+					0,
+					0,
+					1,
+					1,
+					roadmark_id_pixel_buffer
+				);
+				const xyz_pixel_buffer = new Float32Array(4);
+				renderer.readRenderTargetPixels(
+					xyz_texture,
+					0,
+					0,
+					1,
+					1,
+					xyz_pixel_buffer
+				);
+				//记录webgl坐标
+				mouse3D[0] = xyz_pixel_buffer[0];
+				mouse3D[1] = xyz_pixel_buffer[1];
+				mouse3D[2] = xyz_pixel_buffer[2];
+				xyz_pixel_buffer[0] += OpenDriveMap.x_offs;
+				xyz_pixel_buffer[1] += OpenDriveMap.y_offs;
+				const st_pixel_buffer = new Float32Array(4);
+				renderer.readRenderTargetPixels(
+					st_texture,
+					0,
+					0,
+					1,
+					1,
+					st_pixel_buffer
+				);
+
+				camera.clearViewOffset();
+				renderer.setRenderTarget(null);
+				/**
+				 * 选中车道离屏渲染
+				 */
+
+				if (isValid(lane_id_pixel_buffer)) {
+					//根据颜色值解码成车道ID
+					const decoded_lane_id = decodeUInt32(lane_id_pixel_buffer);
+					//自定义数据中获取所有车段中的所有车道数据
+					const odr_lanes_mesh =
+						road_network_mesh.userData.odr_road_network_mesh.lanes_mesh;
+					//本次选中的区域车道ID是否和上次一样
+					if (INTERSECTED_LANE_ID != decoded_lane_id) {
+						//当前是否是初始化状态,如果不是则进行初始化,防止重复初始化
+						if (INTERSECTED_LANE_ID != 0xffffffff) {
+							//根据车道ID索引获取车道信息
+							road_network_mesh.geometry.attributes.color.array.fill(
+								COLORS.road
+							);
+						}
+
+						//保存选中车道ID
+						INTERSECTED_LANE_ID = decoded_lane_id;
+						//根据车道ID获取车道信息
+						const lane_vert_idx_interval =
+							odr_lanes_mesh.get_idx_interval_lane(INTERSECTED_LANE_ID);
+						//获取该车道长度
+						const vert_count =
+							lane_vert_idx_interval[1] - lane_vert_idx_interval[0];
+						//修改离屏渲染场景中该车道的背景颜色
+						applyVertexColors(
+							road_network_mesh.geometry.attributes.color,
+							new THREE.Color(COLORS.lane_highlight),
+							lane_vert_idx_interval[0],
+							vert_count
+						);
+						//手动更新颜色值
+						road_network_mesh.geometry.attributes.color.needsUpdate = true;
+					}
+					//使用过后删除数据冗余,避免造成内存泄漏
+					odr_lanes_mesh.delete();
+				} else {
+					if (INTERSECTED_LANE_ID != 0xffffffff) {
+						const odr_lanes_mesh =
+							road_network_mesh.userData.odr_road_network_mesh.lanes_mesh;
+						const lane_vert_idx_interval =
+							odr_lanes_mesh.get_idx_interval_lane(INTERSECTED_LANE_ID);
+						road_network_mesh.geometry.attributes.color.array.fill(COLORS.road);
+						road_network_mesh.geometry.attributes.color.needsUpdate = true;
+						odr_lanes_mesh.delete();
+						INTERSECTED_LANE_ID = 0xffffffff;
+					}
+				}
+
+				if (isValid(roadmark_id_pixel_buffer)) {
+					//获取
+					const decoded_roadmark_id = decodeUInt32(roadmark_id_pixel_buffer);
+					const odr_roadmarks_mesh =
+						road_network_mesh.userData.odr_road_network_mesh.roadmarks_mesh;
+					if (INTERSECTED_ROADMARK_ID != decoded_roadmark_id) {
+						if (INTERSECTED_ROADMARK_ID != 0xffffffff) {
+							const prev_roadmark_vert_idx_interval =
+								odr_roadmarks_mesh.get_idx_interval_roadmark(
+									INTERSECTED_ROADMARK_ID
+								);
+							roadmarks_mesh.geometry.attributes.color.array.fill(
+								COLORS.roadmark,
+								prev_roadmark_vert_idx_interval[0] * 3,
+								prev_roadmark_vert_idx_interval[1] * 3
+							);
+						}
+						INTERSECTED_ROADMARK_ID = decoded_roadmark_id;
+						const roadmark_vert_idx_interval =
+							odr_roadmarks_mesh.get_idx_interval_roadmark(
+								INTERSECTED_ROADMARK_ID
+							);
+						const vert_count =
+							roadmark_vert_idx_interval[1] - roadmark_vert_idx_interval[0];
+						applyVertexColors(
+							roadmarks_mesh.geometry.attributes.color,
+							new THREE.Color(COLORS.roadmark_highlight),
+							roadmark_vert_idx_interval[0],
+							vert_count
+						);
+						roadmarks_mesh.geometry.attributes.color.needsUpdate = true;
+					}
+					odr_roadmarks_mesh.delete();
+				} else {
+					if (INTERSECTED_ROADMARK_ID != 0xffffffff) {
+						const odr_roadmarks_mesh =
+							road_network_mesh.userData.odr_road_network_mesh.roadmarks_mesh;
+						const roadmark_vert_idx_interval =
+							odr_roadmarks_mesh.get_idx_interval_lane(INTERSECTED_ROADMARK_ID);
+						roadmarks_mesh.geometry.attributes.color.array.fill(
+							COLORS.roadmark,
+							roadmark_vert_idx_interval[0] * 3,
+							roadmark_vert_idx_interval[1] * 3
+						);
+						roadmarks_mesh.geometry.attributes.color.needsUpdate = true;
+						INTERSECTED_ROADMARK_ID = 0xffffffff;
+						odr_roadmarks_mesh.delete();
+					}
+				}
+
+				if (INTERSECTED_LANE_ID != 0xffffffff) {
+					const odr_lanes_mesh =
+						road_network_mesh.userData.odr_road_network_mesh.lanes_mesh;
+					const road_id = odr_lanes_mesh.get_road_id(INTERSECTED_LANE_ID);
+					const lanesec_s0 = odr_lanes_mesh.get_lanesec_s0(INTERSECTED_LANE_ID);
+					const lane_id = odr_lanes_mesh.get_lane_id(INTERSECTED_LANE_ID);
+					const lane_type = OpenDriveMap.roads
+						.get(road_id)
+						.s_to_lanesection.get(lanesec_s0)
+						.id_to_lane.get(lane_id).type;
+					odr_lanes_mesh.delete();
+				}
+				renderer.render(scene, camera);
+			}
+
+			//集合体
+			function get_geometry(odr_meshunion) {
+				const geom = new THREE.BufferGeometry();
+				geom.setAttribute(
+					"position",
+					new THREE.Float32BufferAttribute(
+						getStdVecEntries(odr_meshunion.vertices, true).flat(),
+						3
+					)
+				);
+				//获取uv坐标
+				geom.setAttribute(
+					"st",
+					new THREE.Float32BufferAttribute(
+						getStdVecEntries(odr_meshunion.st_coordinates, true).flat(),
+						2
+					)
+				);
+				//设置点颜色
+				geom.setAttribute(
+					"color",
+					new THREE.Float32BufferAttribute(
+						new Float32Array(geom.attributes.position.count * 3),
+						3
+					)
+				);
+				//设置几何体唯一编号
+				geom.setAttribute(
+					"id",
+					new THREE.Float32BufferAttribute(
+						new Float32Array(geom.attributes.position.count * 4),
+						4
+					)
+				);
+				// geom.setAttribute('ids', new THREE.Float32BufferAttribute(new Float32Array(geom.attributes.position.count * 4), 4));
+				//设置几何体索引数据
+				geom.setIndex(getStdVecEntries(odr_meshunion.indices, true));
+				geom.computeVertexNormals();
+				return geom;
+			}
+
+			//切换照相机视角
+			function fitViewToBbox(bbox, restrict_zoom = true) {
+				let center_pt = new THREE.Vector3();
+				//返回盒子的中心点
+				bbox.getCenter(center_pt);
+
+				const l2xy =
+					0.5 *
+					Math.sqrt(
+						Math.pow(bbox.max.x - bbox.min.x, 2.0) +
+						Math.pow(bbox.max.y - bbox.min.y, 2)
+					);
+				const fov2r = camera.fov * 0.5 * (Math.PI / 180.0);
+				const dz = l2xy / Math.tan(fov2r);
+
+				camera.position.set(bbox.min.x, center_pt.y, bbox.max.z + dz);
+				controls.target.set(center_pt.x, center_pt.y, center_pt.z);
+				if (restrict_zoom)
+					controls.maxDistance = center_pt.distanceTo(bbox.max) * 1.2;
+				controls.update();
+			}
+
+			function fitViewToObj(obj) {
+				const bbox = new THREE.Box3().setFromObject(obj);
+				fitViewToBbox(bbox);
+			}
+
+			//改变颜色
+			function applyVertexColors(buffer_attribute, color, offset, count) {
+				//buffer_attribute.itemSize颜色宽度
+				const colors = new Float32Array(count * buffer_attribute.itemSize);
+				for (
+					let i = 0; i < count * buffer_attribute.itemSize; i += buffer_attribute.itemSize
+				) {
+					colors[i] = color.r;
+					colors[i + 1] = color.g;
+					colors[i + 2] = color.b;
+					// colors[i] =0;
+					// colors[i + 1] = 0;
+					// colors[i + 2] = 255;
+				}
+				//根据颜色偏移设置改变颜色值
+				buffer_attribute.array.set(colors, offset * buffer_attribute.itemSize);
+			}
+
+			function getStdMapKeys(std_map, delete_map = false) {
+				let map_keys = [];
+				const map_keys_vec = std_map.keys();
+				for (let idx = 0; idx < map_keys_vec.size(); idx++)
+					map_keys.push(map_keys_vec.get(idx));
+				map_keys_vec.delete();
+				if (delete_map) std_map.delete();
+				return map_keys;
+			}
+
+			function getStdMapEntries(std_map) {
+				let map_entries = [];
+				//key路段索引 , std_map.get(key)车道编号
+				for (let key of getStdMapKeys(std_map)) {
+					map_entries.push([key, std_map.get(key)]);
+				}
+				return map_entries;
+			}
+
+			function getStdVecEntries(std_vec, delete_vec = false, ArrayType = null) {
+				//获取道路网格三位坐标点数据
+				let entries = ArrayType ?
+					new ArrayType(std_vec.size()) :
+					new Array(std_vec.size());
+				for (let idx = 0; idx < std_vec.size(); idx++) {
+					entries[idx] = std_vec.get(idx);
+				}
+
+				if (delete_vec) std_vec.delete();
+				return entries;
+			}
+
+			//判断当前拾取颜色是否是道路范围的颜色,否则视为无效拾取
+			function isValid(rgba) {
+				return !(rgba[0] == 1 && rgba[1] == 1 && rgba[2] == 1 && rgba[3] == 1);
+			}
+
+			//数据压缩
+			function encodeUInt32(ui32) {
+				let rgba = new Float32Array(4);
+				rgba[0] = (Math.trunc(ui32) % 256) / 255;
+				rgba[1] = (Math.trunc(ui32 / 256) % 256) / 255;
+				rgba[2] = (Math.trunc(ui32 / 256 / 256) % 256) / 255;
+				rgba[3] = (Math.trunc(ui32 / 256 / 256 / 256) % 256) / 255;
+				return rgba;
+			}
+
+			//数据还原
+			function decodeUInt32(rgba) {
+				return (
+					Math.round(rgba[0] * 255) +
+					Math.round(rgba[1] * 255) * 256 +
+					Math.round(rgba[2] * 255) * 256 * 256 +
+					Math.round(rgba[3] * 255) * 256 * 256 * 256
+				);
+			}
+
+			//监听画面变化,更新渲染画面,(自适应的大小)
+			function onWindowResize() {
+				camera.aspect = window.innerWidth / window.innerHeight;
+				camera.updateProjectionMatrix();
+				renderer.setSize(window.innerWidth, window.innerHeight);
+				renderer.setPixelRatio(window.devicePixelRatio);
+			}
+
+			//记录鼠标位置
+			function onDocumentMouseMove(event) {
+				event.preventDefault();
+				mouse.x = event.clientX;
+				mouse.y = event.clientY;
+			}
+
+			//双击切换选中视角
+			function onDocumentMouseDbClick(e) {
+				//判断是否是初始换状态
+				if (INTERSECTED_LANE_ID != 0xffffffff) {
+					//获取车道线
+					const odr_lanes_mesh =
+						road_network_mesh.userData.odr_road_network_mesh.lanes_mesh;
+					const lane_vert_idx_interval =
+						odr_lanes_mesh.get_idx_interval_lane(INTERSECTED_LANE_ID);
+					//根据索引获取坐标
+					const vertA = odr_lanes_mesh.vertices.get(lane_vert_idx_interval[0]);
+					const vertB = odr_lanes_mesh.vertices.get(
+						lane_vert_idx_interval[1] - 1
+					);
+					odr_lanes_mesh.delete();
+					const bbox = new THREE.Box3();
+					//flat, 将数组所有元素都降维(一维)
+					bbox.setFromArray([vertA, vertB].flat());
+					fitViewToBbox(bbox, false);
+				}
+			}
+
+			function recordPathPoint(e) {
+				if (that.startPoint == true) {
+					if (that.count > 1) {
+						camera.setViewOffset(
+							renderer.domElement.width, //画布的宽度
+							renderer.domElement.height, //画布的高度
+							mouse.x | 0, //画布坐标系中,相机的x坐标位置
+							mouse.y | 0, //画布坐标系中,相机的y坐标位置
+							1, //副相机的宽度
+							1 //副相机的高度
+						);
+						renderer.setRenderTarget(xyz_texture);
+						renderer.render(xyz_scene, camera);
+						const xyz_pixel_buffer = new Float32Array(4);
+						renderer.readRenderTargetPixels(
+							xyz_texture,
+							0,
+							0,
+							1,
+							1,
+							xyz_pixel_buffer
+						);
+						//记录webgl坐标
+						mouse3D[0] = xyz_pixel_buffer[0];
+						mouse3D[1] = xyz_pixel_buffer[1];
+						mouse3D[2] = xyz_pixel_buffer[2];
+						camera.clearViewOffset();
+						renderer.setRenderTarget(null);
+						renderer.render(scene, camera);
+						that.position.push(mouse3D[0], mouse3D[1], mouse3D[2]);
+						console.log(mouse3D);
+						let cricle = new THREE.CircleBufferGeometry(0.5, 200);
+						let metrial = new THREE.MeshBasicMaterial({
+							color: 0xff0000
+						})
+						let mesh = new THREE.Mesh(cricle, metrial);
+						mesh.position.set(mouse3D[0], mouse3D[1], mouse3D[2] + 0.011)
+						scene.add(mesh);
+					} else {
+						that.count++;
+					}
+				}
+			}
+
+		},
+	};
+</script>
+<style scoped lang="less">
+	.three_div {
+		width: 100% !important;
+		height: 100% !important;
+	}
+
+	/deep/ canvas {
+		width: 100% !important;
+		height: 100% !important;
+	}
+</style>

+ 5 - 5
vue.config.js

@@ -72,12 +72,12 @@ module.exports = {
         }
     },
     devServer: { //跨域
-        port: "8082", //端口号
+        port: "8002", //端口号
         open: true, //配置自动启动浏览器
         hot: true,
         proxy: { // 配置跨域处理 可以设置多个
             '/simulation/oauth': {
-                target: 'http://36.110.106.156', // online-new
+                target: 'http://60.205.245.110:7001', // online-new
                 changeOrigin: true,
                 secure: false, // 如果是https接口,需要配置这个参数
                 pathRewrite: {
@@ -85,7 +85,7 @@ module.exports = {
                 }
             },
             '/simulation/resource/common': {
-                target: 'http://36.110.106.156', // online-new
+                target: 'http://60.205.245.110:8001', // online-new
                 changeOrigin: true,
                 secure: false, // 如果是https接口,需要配置这个参数
                 pathRewrite: {
@@ -93,7 +93,7 @@ module.exports = {
                 }
             },
             '/simulation/resource/server': {
-                target: 'http://36.110.106.156', // online-new
+                target: 'http://60.205.245.110:8005', // online-new
                 changeOrigin: true,
                 secure: false, // 如果是https接口,需要配置这个参数
                 pathRewrite: {
@@ -101,7 +101,7 @@ module.exports = {
                 }
             },
             '/simulation/resource/video': {
-                target: 'http://36.110.106.156', // online-new
+                target: 'http://60.205.245.110:8007', // online-new
                 changeOrigin: true,
                 secure: false, // 如果是https接口,需要配置这个参数
                 pathRewrite: {

部分文件因文件數量過多而無法顯示