ข้ามไปยังเนื้อหา

drawtonomy vs เขียน OpenSCENARIO XML มือ

การเขียน OpenSCENARIO XML มือเป็น workflow ที่พบบ่อยและสำหรับหลาย use case เป็นตัวเลือกที่ถูกต้อง

เมื่อ XML เป็นทางที่เหมาะสม

  • Scenario ขนาดเล็กและต้องการ byte-level control
  • สร้าง XML แบบ programmatic จาก DSL หรือ codegen pipeline
  • ต้องการ feature ของ spec เกินกว่าที่ visual tool แสดง — conditional trigger, parameter sweep, custom controller, storyboard ซับซ้อน
  • Collaborate บน scenario ผ่าน git และ stable XML diff สำคัญ

สำหรับ production scenario authoring การเขียน XML มือหรือ codegen คือวิธีที่เป็นมาตรฐาน

Subset ของ OpenSCENARIO 1.3 ตาม exporter docs

  • โครงข่ายถนน 2D top-down — เลน ทางแยก linestring ง่าย ๆ — ส่งออกเป็น partial OpenDRIVE 1.8 .xodr
  • การวาง static ของยานพาหนะ คนเดินเท้า สัญญาณไฟ เครื่องหมายบนถนน เป็น <ScenarioObject> / <Pedestrian>
  • Path / trajectory ง่าย ๆ emit เป็น <FollowTrajectoryAction>

.xosc ที่ส่งออก playback ฉากง่าย ๆ ใน esmini เป็นจุดเริ่มต้น ไม่ใช่ scenario สมบูรณ์

ระบุเป็น roadmap item ใน exporter docs

  • OpenDRIVE junction emission (<junction>)
  • ป้ายจราจรในรูปแบบ <signal>
  • Acceleration / deceleration profile, dwell / stop event, signal-aware path, lane-change action, storyboard หลาย actor
  • Conditional trigger, parameter sweep, custom controller, dense traffic flow

สำหรับสิ่งเหล่านี้ต้องเขียน XML มือหรือสร้างจากโค้ด

  1. Sketch layout ใน drawtonomy เพื่อกำหนด lane network และการวาง participant
  2. ส่งออก esmini bundle และยืนยันว่าเวอร์ชันง่าย ๆ เล่นได้
  3. เปิด .xosc ใน text editor และเพิ่มส่วนที่ drawtonomy ไม่แสดงออก
  4. เก็บ source drawtonomy เป็นภาพสำหรับ test plan / paper / slide

drawtonomy คือ sketch XML คือ source of truth สำหรับ scenario ที่ไม่ใช่เรื่องง่าย