OpenDRIVE(.xodr) 파일 가져오기
drawtonomy는 ASAM OpenDRIVE .xodr 도로 네트워크를 직접 읽습니다.
직선·호·스파이럴·다항식으로 기술된 해석기하를 계산해 각 차선을 편집 가능한 Lane 셰이프로 변환하고,
차선 연결 정보도 함께 유지하므로 도로 네트워크를 시각적으로 편집한 뒤 다시 OpenDRIVE로 내보낼 수 있습니다.
파일 가져오기
섹션 제목: “파일 가져오기”- File 메뉴 → Import를 선택합니다.
.xodr파일을 선택합니다.- drawtonomy가 도로 네트워크를 파싱하고 미리보기 지도를 표시합니다. 가져올 도로를 여기서 선택합니다.
가져오기는 OpenDRIVE 1.8까지 지원하며, geoReference 헤더가 있으면 자동으로 읽어
가져온 도로가 지도 배경의 실제 위치에 맞게 정렬됩니다.
특정 도로만 선택해서 가져오기
섹션 제목: “특정 도로만 선택해서 가져오기”Lanelet2 가져오기와 마찬가지로 .xodr 가져오기도 파일 전체를 캔버스에 바로 올리지 않고 선택 미리보기를 거칩니다.
.xodr파일을 선택하면 전체 도로 미리보기가 표시됩니다.- 클릭하거나 드래그해 편집할 도로를 선택합니다.
- Import selection을 클릭합니다.
필요한 구간만 가져오면 대규모 네트워크에서도 에디터 반응 속도를 유지할 수 있습니다. 자세한 내용은 아래 성능 팁을 참고합니다.
변환되는 요소
섹션 제목: “변환되는 요소”| OpenDRIVE 요소 | 가져오기 결과 |
|---|---|
도로 기준선 (line, arc, spiral, poly3, paramPoly3) | 해석기하를 계산해 폴리라인 형태로 변환 |
| 차선 구간 및 차선 폭 | 공유 경계 선형을 갖는 Lane 셰이프로 변환 |
| 차선 후계/선행 링크 | Next / Previous 차선 연결로 보존 |
| 교차로 | 연결 도로는 차선으로 가져오고, 교차로 영역은 교차로 폴리곤으로 렌더링 |
동적 <signal> (신호등) | 해당 <validity>가 적용되는 차선에 연결된 편집 가능한 신호등 셰이프로 변환 |
정적 <signal> (표지판, 속도 제한) | 해당 차선에 연결된 편집 가능한 표지판 레코드로 변환; 전체 속성은 사용자 데이터에 보존 |
geoReference | 지도 배경이 정렬되도록 장면 원점을 설정 |
3D 정보(고도, 경사)는 가져오기 시 평면화됩니다. drawtonomy의 캔버스는 2D이기 때문입니다.
단, 원본 .xodr 파일은 라운드트립용으로 그대로 보관되므로, 수정하지 않은 3D 정보는 내보낼 때 그대로 재출력됩니다.
평면화되거나 무시된 요소는 브라우저 콘솔의 [OpenDRIVE import] 항목에 기록됩니다.
OpenDRIVE로 다시 내보내기 (라운드트립)
섹션 제목: “OpenDRIVE로 다시 내보내기 (라운드트립)”drawtonomy는 가져온 원본 .xodr XML을 사이드카 형태로 보관합니다.
내보내기 시, 수정하지 않은 도로는 원본에서 그대로 재출력되므로
클로소이드·다항식 등의 해석기하가 샘플링 재적합 없이 정확히 유지됩니다.
수정한 도로는 OpenDRIVE 기하로 재적합됩니다.
이 carry-through 방식 덕분에 가져오기 → 편집 → 내보내기 루프가 고충실도 라운드트립이 됩니다 (esmini 3.3.0에서 검증).
성능 팁
섹션 제목: “성능 팁”drawtonomy는 대규모 도로 네트워크도 처리할 수 있어 .xodr 파일 전체를 가져오는 것도 가능합니다.
특정 구간만 필요할 때는 필요한 도로만 선택해 가져오면 에디터 반응 속도를 유지하고 불필요한 형상 로딩을 피할 수 있습니다.
관련 문서
섹션 제목: “관련 문서”- OpenDRIVE란? — 포맷 개요와 drawtonomy의 역할.
- 브라우저에서 OpenDRIVE 맵 편집하기 — 이 워크플로가 적합한 경우와 RoadRunner를 선택해야 할 경우.
- Lanelet2(.osm) 파일 가져오기 — Lanelet2 맵에 대한 동일한 워크플로.
- OpenDRIVE / OpenSCENARIO / esmini로 내보내기 — 장면을 다시 출력합니다.
- OpenDRIVE와 Lanelet2 간 변환 — drawtonomy를 브리지로 활용합니다.
- 비교: drawtonomy vs RoadRunner · vs odrviewer.io