Phác thảo trước khi viết OpenSCENARIO
Với kịch bản nhỏ, viết trực tiếp XML OpenSCENARIO vẫn là lựa chọn bình thường và hợp lý trong nhiều trường hợp. Phác thảo trực quan trước khi viết XML giúp cố định phần layout — cấu trúc làn, vị trí đối tượng, quỹ đạo tổng thể — trước khi phải chiến đấu với cú pháp XML.
drawtonomy được tạo ra cho bước phác thảo này. Đây không phải công cụ tạo kịch bản chuyên nghiệp.
Những gì bước phác thảo mang lại
Phần tiêu đề “Những gì bước phác thảo mang lại”- Nguồn
.drawtonomy.svgcó thể chỉnh sửa dần dần (tiện cho hình và tạo variant). - File zip
.xosc+.xodr+run.shcó thể phát lại pattern đơn giản bằng esmini. - Điểm xuất phát để chỉnh XML tay tiếp theo.
Những gì không có được
Phần tiêu đề “Những gì không có được”- Trigger có điều kiện, quét tham số, controller tùy chỉnh, dòng giao thông dày đặc — drawtonomy không biểu diễn những thứ này.
- Bao phủ toàn bộ đặc tả OpenSCENARIO 1.3 — exporter chỉ bao phủ một phần.
- Kịch bản hoàn chỉnh có thể đưa thẳng vào test pipeline mà không cần thêm việc.
Thực tế nhất là coi kết quả export là “điểm xuất phát”. Layout cố định nhanh từ phác thảo, nhưng logic vẫn là phần phải viết bằng XML hay code.
Quy trình
Phần tiêu đề “Quy trình”- Phác thảo mạng lưới đường. Dùng Lane Tool, Intersection Templates, Crosswalk, v.v.
- Đặt đối tượng. Đặt tự xe vào một làn cụ thể, xe khác theo offset dọc theo hướng di chuyển.
- Thể hiện ý định bằng mũi tên. Kéo mũi tên Path cho từng đối tượng — đây là ghi chú trực quan, không phải trigger chính thức.
- Xuất bundle esmini và phát lại. Kiểm tra layout có đúng ý định không.
- Mở
.xoscbằng text editor và thêm những gì drawtonomy chưa xuất (trigger, khai báo parameter, Storyboard phức tạp, những thứ vượt quá pattern cơ bản).
Trường hợp không đáng làm
Phần tiêu đề “Trường hợp không đáng làm”- Kịch bản đơn lẻ cực nhỏ → viết XML trực tiếp nhanh hơn.
- Muốn tạo nhiều pattern kịch bản → luồng sinh từ DSL hay thư viện Python.
- Cần HD map độ chính xác cao → dùng công cụ HD map chuyên dụng.
Xem hướng dẫn xuất tại Xuất sang ASAM.