นำเข้าไฟล์ OpenDRIVE (.xodr)
drawtonomy รองรับการเปิดไฟล์ ASAM OpenDRIVE .xodr โดยตรงใน browser
โปรแกรมจะคำนวณ geometric ของเส้นอ้างอิง (เส้นตรง, โค้งวงกลม, spiral และ polynomial)
แล้วแปลงแต่ละเลนเป็น Lane shape ที่แก้ไขได้ พร้อมคงการเชื่อมต่อระหว่างเลนไว้ครบถ้วน
ทำให้สามารถแก้ไขโครงข่ายถนนแบบ visual และส่งออกกลับเป็น OpenDRIVE ได้ทันที
นำเข้าไฟล์
หัวข้อที่มีชื่อว่า “นำเข้าไฟล์”- เปิดเมนู File → Import
- เลือกไฟล์
.xodr - drawtonomy แยกวิเคราะห์โครงข่ายถนนและแสดงแผนที่ preview ให้เลือกว่าจะนำถนนส่วนใดเข้ามา
ตัวนำเข้ารองรับ OpenDRIVE ถึงเวอร์ชัน 1.8 และอ่าน header geoReference โดยอัตโนมัติเมื่อมีข้อมูลนั้น ทำให้ถนนที่นำเข้าจัดวางตรงกับพื้นหลังแผนที่ในพิกัดจริง
เลือกนำเข้าเฉพาะถนนที่ต้องการ
หัวข้อที่มีชื่อว่า “เลือกนำเข้าเฉพาะถนนที่ต้องการ”เช่นเดียวกับตัวนำเข้า Lanelet2 การนำเข้า .xodr จะผ่านขั้นตอน selection preview ก่อนนำข้อมูลลงบน canvas:
- หลังเลือกไฟล์
.xodrแล้ว drawtonomy จะแสดง preview ของทุกถนนในไฟล์ - คลิกหรือลากเพื่อเลือกถนนที่ต้องการแก้ไข
- คลิก Import selection
การนำเข้าเฉพาะส่วนที่ต้องการช่วยให้โปรแกรมทำงานได้คล่องตัวบนโครงข่ายขนาดใหญ่ ดูเพิ่มเติมที่เคล็ดลับประสิทธิภาพ
ข้อมูลที่แปลงได้
หัวข้อที่มีชื่อว่า “ข้อมูลที่แปลงได้”| คุณสมบัติ OpenDRIVE | เมื่อนำเข้า |
|---|---|
เส้นอ้างอิงถนน (line, arc, spiral, poly3, paramPoly3) | คำนวณและแปลงเป็น polyline geometry |
| lane section และความกว้างเลน | กลายเป็น Lane shape ที่ใช้ boundary linestring ร่วมกัน |
| ลิงก์ successor / predecessor ของเลน | คงไว้เป็นการเชื่อมต่อ Next / Previous lane |
| Junction | ถนนเชื่อมต่อนำเข้าเป็นเลน ส่วนพื้นที่ junction แสดงเป็น intersection polygon |
<signal> แบบ dynamic (ไฟจราจร) | กลายเป็น traffic-light shape ที่แก้ไขได้ เชื่อมกับเลนตามที่ <validity> กำหนด |
<signal> แบบ static (ป้ายจราจร, จำกัดความเร็ว) | กลายเป็น sign record ที่แก้ไขได้ เชื่อมกับเลนที่ควบคุม พร้อม attribute ครบชุดในข้อมูล user |
geoReference | กำหนดจุดอ้างอิงของ scene ให้พื้นหลังแผนที่ตรงตำแหน่ง |
ข้อมูล 3D (elevation, banking) จะถูก flatten ตอนนำเข้าเนื่องจาก canvas ของ drawtonomy เป็น 2D แต่ไฟล์ .xodr ต้นฉบับยังคงถูกเก็บไว้สำหรับ round-trip ดังนั้นข้อมูล 3D ที่ไม่ได้แก้ไขจะถูกส่งออกกลับไปครบถ้วน ส่วนข้อมูลที่ถูก flatten หรือข้ามไปจะบันทึกใน browser console ภายใต้ [OpenDRIVE import]
Round-trip กลับสู่ OpenDRIVE
หัวข้อที่มีชื่อว่า “Round-trip กลับสู่ OpenDRIVE”drawtonomy เก็บ XML ของไฟล์ .xodr ต้นฉบับไว้เป็น sidecar เมื่อนำเข้า เมื่อส่งออก ถนนที่ไม่ได้แก้ไขจะถูกส่งออกจากต้นฉบับโดยตรง ทำให้ analytical geometry (clothoid, polynomial) ได้รับการคงรักษาไว้แม่นยำ โดยไม่ต้องคำนวณใหม่จาก sampled point ส่วนถนนที่แก้ไขแล้วจะถูก fit กลับเป็น OpenDRIVE geometry วิธีนี้ทำให้ loop นำเข้า → แก้ไข → ส่งออก มีความแม่นยำสูง (ทดสอบแล้วกับ esmini 3.3.0)
เคล็ดลับประสิทธิภาพ
หัวข้อที่มีชื่อว่า “เคล็ดลับประสิทธิภาพ”drawtonomy รองรับโครงข่ายถนนขนาดใหญ่ได้ดี แต่ถ้าต้องการทำงานเฉพาะบางส่วน การนำเข้าเฉพาะถนนที่ต้องการจะช่วยให้โปรแกรมทำงานได้รวดเร็วขึ้นและหลีกเลี่ยงการโหลด geometry ที่ไม่จำเป็น
ดูเพิ่มเติม
หัวข้อที่มีชื่อว่า “ดูเพิ่มเติม”- OpenDRIVE คืออะไร? — ภาพรวมของ format และตำแหน่งของ drawtonomy
- แก้ไขแผนที่ OpenDRIVE ใน browser — เมื่อไหร่ควรใช้ drawtonomy และเมื่อไหร่ควรใช้ RoadRunner แทน
- นำเข้าไฟล์ Lanelet2 (.osm) — workflow เดียวกันสำหรับแผนที่ Lanelet2
- ส่งออกเป็น OpenDRIVE / OpenSCENARIO / esmini — เขียน scene กลับออกไป
- แปลงระหว่าง OpenDRIVE และ Lanelet2 — ใช้ drawtonomy เป็นตัวกลาง
- เปรียบเทียบ: drawtonomy vs RoadRunner · vs odrviewer.io