跳转到内容

构建你的第一个场景:从零开始的变道场景

本教程从一张空白画布开始,构建一个完整场景:车辆沿着双车道行驶,加速,然后变入右侧车道。最后得到一个通过的表决结果。

全程在浏览器中进行。打开 drawtonomy.com 然后跟随教程操作。

从空白画布到运行中的变道场景:绘制道路,添加车辆,构建两个事件,按播放。

你开始于场景模式,这是绘制工具所在的地方。

  1. N 调出车道工具。
  2. 在画布左侧点击放置第一个中线点,再在右侧远处点击一次,然后按 Enter

画得长一些 — 让中线跨越整个可见屏幕。如果车辆到达道路尽头,它会停在那里;如果这发生在运行中,拉长道路后重新按播放。

现在添加第二条车道:

  1. V 调出选择工具,点击你绘制的车道。
  2. 在属性面板中,找到右车道部分并点击创建

创建会生成一条新的相邻车道;设置则指向已存在的车道。详见 管理车道连接 了解更多。

打开左上方的汉堡菜单。在编辑部分下,点击场景

绘制工具栏被替换为简短的工具栏 — 撤销、重做、手形、选择、添加演员、路径 — 并且逻辑卡停靠在屏幕底部。

  1. 点击工具栏中的添加演员
  2. 放置面板打开,显示模板颜色行。展示了 6 个模板;更多… 展开列表显示全部 48 个(轿车、卡车、公交、摩托车、自行车、行人及更多)。
  3. 勾选设置初始速度,如果你想让车从 t=0 开始行驶,保留速度8.33 m/s。
  4. 点击左侧车道,靠近其起点。

车辆出现在演员下方,名为 Vehicle1。这个名字是最终出现在导出的 .xosc 中的实体名称,如果你关心输出,可以在这里重命名。

面板顶部还有一个编辑道路按钮 — 这是回到场景模式的快捷方式,以防你需要修改道路。

点击**+ Phase**。

逻辑面板 — 阶段卡、事件卡、+ Event 和终止条件节点

一次点击给你不止一个阶段。drawtonomy 会创建:

  • 第一阶段,包含 VEHICLE1 的一行,
  • 该行内的 Event_1,已附带一个默认的改变速度动作,8.33 m/s 按时间 2.00 秒
  • 一个默认触发条件仿真时间 0.00 秒
  • 以及右侧打开的事件编辑器。

所以第一个事件不是你添加的东西 — 而是你编辑的东西。

事件编辑器 — 演员、触发条件、动作和高级部分

5. 让第一个事件在 t = 2 秒时加速

Section titled “5. 让第一个事件在 t = 2 秒时加速”

在事件编辑器中:

  1. 触发条件下,预设是仿真时间。设置2.00
  2. 动作下,预设是改变速度。将相对于保持为 固定值,设置速度8.33 m/s,将动态保持为 按时间 2.00 秒

改变速度表单 — 相对于、速度、动态、值

读作一句话:运行两秒后,Vehicle1 达到 8.33 m/s,花费两秒到达该速度。

图表中的事件卡现在总结为 8.3 m/s · over 2 s

VEHICLE1 行中点击**+ Event**。Event_2 出现,与 Event_1 相同的默认值 — 包括一个在 0.00 秒 的触发。

将其转变为变道事件:

  1. 设置触发条件5.00。先做这个。两个都在 0.00 秒 触发的事件会同时发生,这通常不是你想要的。
  2. 打开动作下拉菜单,从常用组中选择变道

变道开始时目标设为 同车道引用设为演员自己,所以编辑器立即警告你:

⚠ 变道目标是演员当前的车道 — 不会发生横向移动。

这个警告是预期的。修复它:

  1. 设置目标。一个变道数字段出现 — 它仅对 存在。设置为 1
  2. 保留引用Vehicle1 相对于引用演员的当前车道,所以引用自己意味着”我右边的一条车道”。
  3. 动态保持为 按距离 30.00 m

变道表单 — 目标、引用、变道数、动态、值

警告消失,卡片总结为 1 → · over 30 m

按逻辑卡左侧的 按钮。

运行中的回放时间线 — 播放头、事件标记、演员时间线块

当运行进行中:

  • 表决徽章空闲 变为 运行,当场景完成且未触发失败条件时变为 通过
  • 时间读数计数上升,时间线填满每个演员一个块加标记事件开始位置。
  • 跟随:关闭 是默认摄像头。如果车驶出视图,切换到跟随:Vehicle1

大约在 t=2 秒时车加速;大约在 t=5 秒时它向右滑动,在 30 m 上变一条车道。终止条件节点设为 自动,所以一旦所有事件完成,运行停止。

犯错了?Ctrl+Z 或工具栏中的 ↶ 按钮撤销逻辑图的编辑 — 包括已删除的阶段。

你从不需要按”保存”。drawtonomy 在你工作时将你的场景、场景逻辑和任何导入的 OpenDRIVE 地图保存在浏览器中,并在你下次打开该标签页时恢复它们。当恢复一个会话时,它显示一个已恢复之前的会话横幅 — 点击它上的从头开始以改为从空白画布开始。

因为这存在于浏览器中,它不是分享或存档场景的方法。为此,导出下方的 .xosc.xodr

汉堡菜单 → 导出

  • OpenSCENARIO (.xosc)… — 你刚构建的场景。
  • .xodr (OpenDRIVE) — 它运行的道路。.xosc 没有它无法播放。
  • 导出视频… — 将运行记录为视频文件。

导出的对可在 esmini 和其他 OpenSCENARIO 1.x 工具中打开。参考 导出 OpenDRIVE + OpenSCENARIO

导出的 .xosc + .xodr 在原生 esmini 中不加修改即可运行 — 一次拍摄:绘制、导出 esmini zip,然后在 esmini 本身中重放导出的场景。
  • 道路和演员属于场景模式;行为属于场景逻辑模式。
  • + Phase 一次点击创建一个阶段、第一个事件、默认动作和默认触发条件。
  • 一个事件是一个触发条件加一个或多个动作
  • 变道需要目标设为 才能移动任何东西。