From c9b21e0f5399957edf1cfa51d026142c1ef44bf1 Mon Sep 17 00:00:00 2001 From: Yuki Takagi Date: Mon, 22 Jan 2024 21:59:19 +0900 Subject: [PATCH 1/4] improve algorithm Signed-off-by: Yuki Takagi --- .../behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/planning/behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp b/planning/behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp index cee6975df3155..85b2237017edf 100644 --- a/planning/behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp +++ b/planning/behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp @@ -896,6 +896,8 @@ std::optional CrosswalkModule::checkStopForStuckVehicles( } } + const auto & ego_pos = planner_data_->current_odometry->pose.position; + for (const auto & object : objects) { if (!isVehicle(object)) { continue; From 0a382bebf69bd414cdf13f0c737c4e94c1891c42 Mon Sep 17 00:00:00 2001 From: Yuki Takagi Date: Tue, 23 Jan 2024 15:13:45 +0900 Subject: [PATCH 2/4] refactor Signed-off-by: Yuki Takagi --- .../behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/planning/behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp b/planning/behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp index 85b2237017edf..cee6975df3155 100644 --- a/planning/behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp +++ b/planning/behavior_velocity_crosswalk_module/src/scene_crosswalk.cpp @@ -896,8 +896,6 @@ std::optional CrosswalkModule::checkStopForStuckVehicles( } } - const auto & ego_pos = planner_data_->current_odometry->pose.position; - for (const auto & object : objects) { if (!isVehicle(object)) { continue; From f9b5fbf811534558cfcdd0de86a57ff723e19fe1 Mon Sep 17 00:00:00 2001 From: Yuki Takagi Date: Thu, 25 Jan 2024 22:03:08 +0900 Subject: [PATCH 3/4] update docs Signed-off-by: Yuki Takagi --- .../README.md | 2 +- .../docs/stuck_vehicle_detection.svg | 115 +++++++++--------- 2 files changed, 59 insertions(+), 58 deletions(-) diff --git a/planning/behavior_velocity_crosswalk_module/README.md b/planning/behavior_velocity_crosswalk_module/README.md index ce231659ccf78..c1ddc28e03426 100644 --- a/planning/behavior_velocity_crosswalk_module/README.md +++ b/planning/behavior_velocity_crosswalk_module/README.md @@ -196,7 +196,7 @@ In the `stuck_vehicle` namespace, the following parameters are defined. | ---------------------------------- | ------- | ------ | ----------------------------------------------------------------------- | | `stuck_vehicle_velocity` | [m/s] | double | maximum velocity threshold whether the target vehicle is stopped or not | | `max_stuck_vehicle_lateral_offset` | [m] | double | maximum lateral offset of the target vehicle position | -| `stuck_vehicle_attention_range` | [m] | double | detection area length ahead of the crosswalk | +| `required_clearance` | [m] | double | clearance to be secured between the ego and the ahead vehicle | | `min_acc` | [m/ss] | double | minimum acceleration to stop | | `min_jerk` | [m/sss] | double | minimum jerk to stop | | `max_jerk` | [m/sss] | double | maximum jerk to stop | diff --git a/planning/behavior_velocity_crosswalk_module/docs/stuck_vehicle_detection.svg b/planning/behavior_velocity_crosswalk_module/docs/stuck_vehicle_detection.svg index c517be5bb9967..6a027f725ba47 100644 --- a/planning/behavior_velocity_crosswalk_module/docs/stuck_vehicle_detection.svg +++ b/planning/behavior_velocity_crosswalk_module/docs/stuck_vehicle_detection.svg @@ -1,92 +1,93 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
-
-
- stuck_vehicle_attention_range +
+
+
+ vehicle_length+required_clearance
- stuck_vehicle_atten... + vehicle_length+required_clearance - - - - - - - - - + + + + + + + + + + -
-
-
+
+
+
max_stuck_vehicle_lateral_offset
- max_stuck_vehicle_l... + max_stuck_vehicle_lateral_offset - - + + - + Text is not SVG - cannot display From 4b702cc1d3121bfb463dfbf756f068dda58aa98c Mon Sep 17 00:00:00 2001 From: Yuki Takagi Date: Thu, 25 Jan 2024 22:18:48 +0900 Subject: [PATCH 4/4] update a figure Signed-off-by: Yuki Takagi --- .../docs/stuck_vehicle_detection.svg | 110 +++++++++--------- 1 file changed, 55 insertions(+), 55 deletions(-) diff --git a/planning/behavior_velocity_crosswalk_module/docs/stuck_vehicle_detection.svg b/planning/behavior_velocity_crosswalk_module/docs/stuck_vehicle_detection.svg index 6a027f725ba47..773edf7989de9 100644 --- a/planning/behavior_velocity_crosswalk_module/docs/stuck_vehicle_detection.svg +++ b/planning/behavior_velocity_crosswalk_module/docs/stuck_vehicle_detection.svg @@ -6,84 +6,84 @@ xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="372px" - height="106px" - viewBox="-0.5 -0.5 372 106" - content="<mxfile host="Electron" modified="2024-01-25T12:55:50.096Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/22.1.21 Chrome/120.0.6099.109 Electron/28.1.0 Safari/537.36" etag="CbGyYY_d2OCUB8-dD4w1" version="22.1.21" type="device"> <diagram name="ページ1" id="5I6Ne_xkukPzxpeAgwA0"> <mxGraphModel dx="576" dy="342" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> <root> <mxCell id="0" /> <mxCell id="1" parent="0" /> <mxCell id="xIzGYYDbp40uLdeun0S--1" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#FFD966;strokeColor=none;opacity=60;" parent="1" vertex="1"> <mxGeometry x="344" y="640" width="76" height="40" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-88" value="" style="group" parent="1" vertex="1" connectable="0"> <mxGeometry x="311" y="640" width="33" height="80" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-89" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;opacity=60;fillColor=#999999;fontColor=#333333;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry width="33" height="80" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-90" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="4" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-91" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="14" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-92" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="24" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-93" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="34" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-94" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="64" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-95" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="44" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-96" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="74" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-107" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="54" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-2" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="140" y="640" as="sourcePoint" /> <mxPoint x="510" y="640" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-26" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="140" y="680" as="sourcePoint" /> <mxPoint x="510" y="680" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-27" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="140" y="720" as="sourcePoint" /> <mxPoint x="510" y="720" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-45" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#33FF99;strokeColor=none;opacity=60;" parent="1" vertex="1"> <mxGeometry x="260" y="647" width="221" height="26" as="geometry" /> </mxCell> <mxCell id="xIzGYYDbp40uLdeun0S--6" value="" style="group" parent="1" vertex="1" connectable="0"> <mxGeometry x="204" y="646" width="65" height="28" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-115" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="30" y="27" as="sourcePoint" /> <mxPoint x="30" y="1" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-112" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=26;" parent="xIzGYYDbp40uLdeun0S--6" vertex="1"> <mxGeometry y="1" width="65" height="26" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-113" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=29;" parent="xIzGYYDbp40uLdeun0S--6" vertex="1"> <mxGeometry x="4" y="4" width="45" height="20" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-114" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=36;" parent="xIzGYYDbp40uLdeun0S--6" vertex="1"> <mxGeometry x="8" y="5" width="30" height="18" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-116" value="" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;" parent="xIzGYYDbp40uLdeun0S--6" vertex="1"> <mxGeometry x="19" y="11" width="5" height="5" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-117" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="9" y="28" as="sourcePoint" /> <mxPoint x="17" y="28" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-118" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="45" y="28" as="sourcePoint" /> <mxPoint x="53" y="28" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-119" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="9" as="sourcePoint" /> <mxPoint x="17" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-120" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="45" as="sourcePoint" /> <mxPoint x="53" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-11" value="" style="group" parent="1" vertex="1" connectable="0"> <mxGeometry x="378" y="658" width="65" height="28" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-2" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="30" y="27" as="sourcePoint" /> <mxPoint x="30" y="1" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-3" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=26;" parent="GtD4kdT6haW-KkvCoNac-11" vertex="1"> <mxGeometry y="1" width="65" height="26" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-4" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=29;" parent="GtD4kdT6haW-KkvCoNac-11" vertex="1"> <mxGeometry x="8" y="4" width="40" height="20" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-7" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="9" y="28" as="sourcePoint" /> <mxPoint x="17" y="28" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-8" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="45" y="28" as="sourcePoint" /> <mxPoint x="53" y="28" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-9" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="9" as="sourcePoint" /> <mxPoint x="17" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-10" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="45" as="sourcePoint" /> <mxPoint x="53" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-12" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=29;" parent="GtD4kdT6haW-KkvCoNac-11" vertex="1"> <mxGeometry x="8" y="4" width="30" height="20" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-13" value="vehicle_length+required_clearance" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=6;" parent="1" vertex="1"> <mxGeometry x="311" y="616" width="99" height="30" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-14" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=0.5;fontSize=4;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="359" y="643" as="sourcePoint" /> <mxPoint x="351" y="636" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-15" value="" style="endArrow=blockThin;startArrow=blockThin;html=1;rounded=0;strokeColor=#000000;strokeWidth=0.8;startFill=1;endFill=1;startSize=3;endSize=3;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="344" y="643" as="sourcePoint" /> <mxPoint x="419" y="643" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-16" value="" style="endArrow=blockThin;startArrow=blockThin;html=1;rounded=0;strokeColor=#000000;strokeWidth=0.8;startFill=1;endFill=1;startSize=3;endSize=3;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="365" y="660" as="sourcePoint" /> <mxPoint x="365" y="672" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-17" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 1;strokeWidth=1;rounded=1;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="361" y="672" as="sourcePoint" /> <mxPoint x="377" y="672" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-18" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 1;strokeWidth=1;rounded=1;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="347" y="660" as="sourcePoint" /> <mxPoint x="368" y="660" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-19" value="max_stuck_vehicle_lateral_offset" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=6;" parent="1" vertex="1"> <mxGeometry x="344" y="686" width="96" height="30" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-20" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=0.5;fontSize=4;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="354" y="696" as="sourcePoint" /> <mxPoint x="364" y="669" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-21" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#FF1100;strokeWidth=2;opacity=60;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="280" y="680" as="sourcePoint" /> <mxPoint x="280" y="640" as="targetPoint" /> </mxGeometry> </mxCell> </root> </mxGraphModel> </diagram> </mxfile> " + height="101px" + viewBox="-0.5 -0.5 372 101" + content="<mxfile host="app.diagrams.net" modified="2024-01-25T13:17:57.493Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36" etag="UVsolCrBpMspgrY81QP-" version="23.0.1" type="device"> <diagram name="ページ1" id="5I6Ne_xkukPzxpeAgwA0"> <mxGraphModel dx="482" dy="277" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> <root> <mxCell id="0" /> <mxCell id="1" parent="0" /> <mxCell id="xIzGYYDbp40uLdeun0S--1" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#FFD966;strokeColor=none;opacity=60;" parent="1" vertex="1"> <mxGeometry x="344" y="640" width="76" height="40" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-88" value="" style="group" parent="1" vertex="1" connectable="0"> <mxGeometry x="311" y="640" width="33" height="80" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-89" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;opacity=60;fillColor=#999999;fontColor=#333333;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry width="33" height="80" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-90" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="4" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-91" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="14" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-92" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="24" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-93" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="34" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-94" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="64" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-95" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="44" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-96" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="74" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-107" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=none;fillColor=#FFFFFF;" parent="l1W4LN5hlG-VWzgE4Qzh-88" vertex="1"> <mxGeometry x="1.5" y="54" width="30" height="6" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-2" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="140" y="640" as="sourcePoint" /> <mxPoint x="510" y="640" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-26" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="140" y="680" as="sourcePoint" /> <mxPoint x="510" y="680" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-27" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="140" y="720" as="sourcePoint" /> <mxPoint x="510" y="720" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-45" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#33FF99;strokeColor=none;opacity=60;" parent="1" vertex="1"> <mxGeometry x="260" y="647" width="221" height="26" as="geometry" /> </mxCell> <mxCell id="xIzGYYDbp40uLdeun0S--6" value="" style="group" parent="1" vertex="1" connectable="0"> <mxGeometry x="204" y="646" width="65" height="28" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-115" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="30" y="27" as="sourcePoint" /> <mxPoint x="30" y="1" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-112" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=26;" parent="xIzGYYDbp40uLdeun0S--6" vertex="1"> <mxGeometry y="1" width="65" height="26" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-113" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=29;" parent="xIzGYYDbp40uLdeun0S--6" vertex="1"> <mxGeometry x="4" y="4" width="45" height="20" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-114" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=36;" parent="xIzGYYDbp40uLdeun0S--6" vertex="1"> <mxGeometry x="8" y="5" width="30" height="18" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-116" value="" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;" parent="xIzGYYDbp40uLdeun0S--6" vertex="1"> <mxGeometry x="19" y="11" width="5" height="5" as="geometry" /> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-117" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="9" y="28" as="sourcePoint" /> <mxPoint x="17" y="28" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-118" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="45" y="28" as="sourcePoint" /> <mxPoint x="53" y="28" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-119" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="9" as="sourcePoint" /> <mxPoint x="17" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="l1W4LN5hlG-VWzgE4Qzh-120" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="xIzGYYDbp40uLdeun0S--6" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="45" as="sourcePoint" /> <mxPoint x="53" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-11" value="" style="group" parent="1" vertex="1" connectable="0"> <mxGeometry x="378" y="658" width="65" height="28" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-2" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="30" y="27" as="sourcePoint" /> <mxPoint x="30" y="1" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-3" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=26;" parent="GtD4kdT6haW-KkvCoNac-11" vertex="1"> <mxGeometry y="1" width="65" height="26" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-4" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=29;" parent="GtD4kdT6haW-KkvCoNac-11" vertex="1"> <mxGeometry x="8" y="4" width="40" height="20" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-7" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="9" y="28" as="sourcePoint" /> <mxPoint x="17" y="28" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-8" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="45" y="28" as="sourcePoint" /> <mxPoint x="53" y="28" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-9" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="9" as="sourcePoint" /> <mxPoint x="17" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-10" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=1;fontSize=4;endSize=6;" parent="GtD4kdT6haW-KkvCoNac-11" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="45" as="sourcePoint" /> <mxPoint x="53" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-12" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=default;fontSize=4;fillColor=default;gradientColor=none;arcSize=29;" parent="GtD4kdT6haW-KkvCoNac-11" vertex="1"> <mxGeometry x="8" y="4" width="30" height="20" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-13" value="vehicle_length+required_clearance" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=6;" parent="1" vertex="1"> <mxGeometry x="328.5" y="620" width="107" height="17" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-14" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=0.5;fontSize=4;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" parent="1" edge="1" target="GtD4kdT6haW-KkvCoNac-13"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="380" y="643" as="sourcePoint" /> <mxPoint x="351" y="636" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-15" value="" style="endArrow=blockThin;startArrow=blockThin;html=1;rounded=0;strokeColor=#000000;strokeWidth=0.8;startFill=1;endFill=1;startSize=3;endSize=3;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="344" y="643" as="sourcePoint" /> <mxPoint x="419" y="643" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-16" value="" style="endArrow=blockThin;startArrow=blockThin;html=1;rounded=0;strokeColor=#000000;strokeWidth=0.8;startFill=1;endFill=1;startSize=3;endSize=3;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="365" y="660" as="sourcePoint" /> <mxPoint x="365" y="672" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-17" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 1;strokeWidth=1;rounded=1;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="361" y="672" as="sourcePoint" /> <mxPoint x="377" y="672" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-18" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 1;strokeWidth=1;rounded=1;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="347" y="660" as="sourcePoint" /> <mxPoint x="368" y="660" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-19" value="max_stuck_vehicle_lateral_offset" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=6;" parent="1" vertex="1"> <mxGeometry x="344" y="686" width="99" height="30" as="geometry" /> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-20" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#000000;strokeWidth=0.5;fontSize=4;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="354" y="696" as="sourcePoint" /> <mxPoint x="364" y="669" as="targetPoint" /> </mxGeometry> </mxCell> <mxCell id="GtD4kdT6haW-KkvCoNac-21" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#FF1100;strokeWidth=2;opacity=60;" parent="1" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="280" y="680" as="sourcePoint" /> <mxPoint x="280" y="640" as="targetPoint" /> </mxGeometry> </mxCell> </root> </mxGraphModel> </diagram> </mxfile> " > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
-
-
+
+
+
vehicle_length+required_clearance
- vehicle_length+required_clearance + vehicle_length+required_clearance - - - - - - - - - - + + + + + + + + + + -
-
-
+
+
+
max_stuck_vehicle_lateral_offset
- max_stuck_vehicle_lateral_offset + max_stuck_vehicle_lateral_offset - - + +