导入 Lanelet2 (.osm) 文件
drawtonomy 能读取 Lanelet2 OSM 格式的地图。示例地图可从 Autoware 文档 获取。
导入整份文件
Section titled “导入整份文件”每次 .osm 导入都会经过选择预览 ——没有”直接全部导入”的快捷方式。如果要导入整份文件,需要在预览中选中所有内容:
- 打开菜单(左上角的汉堡菜单)→ Import…。
- 选择
.osm文件。 - drawtonomy 解析文件,显示一张预览地图,标出所有车道。
- 选中全部(拖拽方框框住整张地图,或使用全选控件),然后点击 Import (N)。
- 画布填充上车道形状及其连接关系。
如果只需要地图的一部分,可以只选中那些车道——参考下面的 仅导入指定车道。
最小化的 Lanelet2 文件示例
Section titled “最小化的 Lanelet2 文件示例”如果你只是想找个文件来试试导入,这是最小化的有效 Lanelet2 .osm 文件 ——一条由两条边界方式组成的车道(一条 solid 左边界和一条 dashed 右边界),跨越六个节点。保存为 sample.osm 并按上面的步骤导入;drawtonomy 会正确渲染一条单车道,显示对应的实线 / 虚线边界风格。
<?xml version="1.0" encoding="UTF-8"?><osm version="0.6" generator="hand-authored-lanelet2-sample"> <node id="1" lat="0.0000000" lon="0.0000000"> <tag k="local_x" v="0"/><tag k="local_y" v="0"/><tag k="ele" v="0"/> </node> <node id="2" lat="0.0000900" lon="0.0000000"> <tag k="local_x" v="0"/><tag k="local_y" v="10"/><tag k="ele" v="0"/> </node> <node id="3" lat="0.0001800" lon="0.0000180"> <tag k="local_x" v="2"/><tag k="local_y" v="20"/><tag k="ele" v="0"/> </node> <node id="4" lat="0.0000000" lon="0.0000320"> <tag k="local_x" v="3.5"/><tag k="local_y" v="0"/><tag k="ele" v="0"/> </node> <node id="5" lat="0.0000900" lon="0.0000320"> <tag k="local_x" v="3.5"/><tag k="local_y" v="10"/><tag k="ele" v="0"/> </node> <node id="6" lat="0.0001800" lon="0.0000500"> <tag k="local_x" v="5.5"/><tag k="local_y" v="20"/><tag k="ele" v="0"/> </node> <way id="10"> <nd ref="1"/><nd ref="2"/><nd ref="3"/> <tag k="type" v="line_thin"/> <tag k="subtype" v="solid"/> </way> <way id="11"> <nd ref="4"/><nd ref="5"/><nd ref="6"/> <tag k="type" v="line_thin"/> <tag k="subtype" v="dashed"/> </way> <relation id="100"> <member type="way" ref="10" role="left"/> <member type="way" ref="11" role="right"/> <tag k="type" v="lanelet"/> <tag k="subtype" v="road"/> <tag k="location" v="urban"/> <tag k="one_way" v="yes"/> </relation></osm>关键的部分:
- 节点(Nodes) 承载几何数据。Lanelet2 存储实际的
lat/lon, Autoware 风格的文件还带有投影坐标local_x/local_y。 - 方式(Ways) 是车道边界。
type=line_thin配上subtype=solid或subtype=dashed设置导入时看到的路标线风格。 lanelet关系 把一条left方式和一条right方式绑定成 一条可行驶的车道。添加更多车道(并在邻近车道间共享方式) 来构建路网。
仅导入指定车道
Section titled “仅导入指定车道”对于大型地图,导入每条车道会拖慢编辑器。改用车道选择对话框:
- 打开菜单 → Import… 并选择
.osm文件。 - drawtonomy 显示预览地图。
- 点击或拖拽选择想要的车道。
- 点击 Import (N),其中 N 是你选中的车道数。
drawtonomy 能处理大型地图,你可以在需要时导入完整的 Lanelet2 文件。当只关心某一区域时,仅导入需要的车道 能让编辑器更快响应,并避免加载你不会编辑的几何数据。
导入的车道是完整保真的 Lane 图形;Lanelet2 文件中的连接关系会被保留。编辑、平滑边界, 或 导出回去 都不会丧失拓扑关系。
往返导出与管制要素
Section titled “往返导出与管制要素”drawtonomy 在导入时会保留原始 .osm XML 作为附带文件。
导出回 .osm (Lanelet2) 时,原始 ID 和标签会被保留,
你没有修改过的管制要素 ——信号灯、优先权、速度限制、停止线 ——
会按原样逐字从源文件重新生成。
导入的管制要素也变成可编辑的:信号灯、交通标志(包括速度限制)、停止线、优先权关系以 drawtonomy 图形的形式导入,链接到它们所管理的车道,你也可以用同样的 UI 从零开始放置新的要素。对于激光雷达对齐或城市级编辑, 请使用 Vector Map Builder 或 JOSM。
- OpenDRIVE 与 Lanelet2 格式互转 ——
用 drawtonomy 作为桥接到
.xodr的工具。 - 导入 OpenDRIVE (.xodr) 文件 —— 相同的选择工作流,用于 OpenDRIVE 地图。
- drawtonomy.svg 格式 —— 在 drawtonomy 内重新编辑时的无损格式。
- 从地图生成车道 —— 当你没有精修的地图文件时。