drawtonomy vs handskriven OpenSCENARIO XML
Handskriven OpenSCENARIO XML
Section titled “Handskriven OpenSCENARIO XML”Att handskriva OpenSCENARIO-XML är ett vanligt arbetsflöde och för många användningsfall det rätta.
När XML är rätt väg:
- Scenariot är litet och du vill ha kontroll på bytenivå.
- Du genererar XML programmatiskt från en DSL eller en kodgenereringspipeline.
- Du behöver specfunktioner som drawtonomy inte exporterar — parametersvep, anpassade eller ML-drivna styrenheter, täta trafikflödesmodeller, OpenSCENARIO 1.3.
- Du bygger ett nytt vägnät med korsningar från grunden och behöver produktionsklar
<junction>-geometri — drawtonomys korsningsexport är precis när en importerad, oredigerad.xodrförs vidare, men att generera ny korsningsgeometri från handritade körfält har ännu låg precision. - Du samarbetar kring en stor katalog via git och stabila XML-diffar på bytenivå är viktiga.
I de fallen är handskriven eller kodgenererad XML det kanoniska tillvägagångssättet. För att skapa och köra ett enskilt konkret scenario — actions, triggers och ett PASS/FAIL-utfall — går en visuell redigerare oftast snabbare.
Vad drawtonomy kan uttrycka i dag
Section titled “Vad drawtonomy kan uttrycka i dag”En visuell redigerare för OpenSCENARIO 1.2 som bygger ett fullständigt storyboard på kanvasen och kör det i webbläsaren — utan att skriva XML:
- Ett 2D-vägnät sett uppifrån — körfält, korsningar, linjestrings — exporterat som OpenDRIVE 1.8
.xodr, samt placering av fordon, fotgängare, trafikljus och vägmarkeringar som entiteter. - Ett komplett storyboard: faser (akter), händelser, alla 35 actions i specifikationen (hastighet, filbyte, teleportering, banuppföljning, aktivering av styrenhet med mera) och alla 19 triggervillkor (plus 6 avancerade) kombinerade med AND/OR-logik.
- END- och FAIL-villkor som ger ett PASS/FAIL-utfall när scenariot körs.
- Körning direkt i webbläsaren på esmini kompilerat till WebAssembly — uppspelningskontroller, bildexakt sökning, en följekamera, ghost-spår och en valfri 3D-förhandsvisning av körningen — så att du kan granska scenariot utan att lämna sidan.
.xosc-filen körs också oförändrad i en native esmini-installation. - Export till OpenSCENARIO 1.0, 1.1 eller 1.2 (1.3 är ännu inte tillgängligt), samt OpenDRIVE
<junction>/<connection>-primitiver och trafikskyltar som<signal>-poster.
Vad drawtonomy inte uttrycker
Section titled “Vad drawtonomy inte uttrycker”De verkliga luckorna som fortfarande kräver handskriven eller genererad XML:
- Export till OpenSCENARIO 1.3 — formatet stöds för import men erbjuds ännu inte som exportmål.
- Produktionsklar OpenDRIVE
<junction>-geometri när ett vägnät byggs från grunden. Korsningskopplingar förs vidare med hög precision när en importerad, oredigerad.xodrbevaras genom exporten; att generera ny korsningsgeometri från handritade körfält har fortfarande låg precision, och analytisk klotoidgeometri modelleras inte. - Parametersvep, anpassade eller ML-drivna styrenheter och täta trafikflödesmodeller.
- OpenSCENARIO 2.0 / M-SDL (drawtonomy siktar på 1.x).
För dessa fall är handskriven eller genererad XML fortfarande rätt väg.
En rimlig hybrid
Section titled “En rimlig hybrid”För de flesta scenarier du bygger och kör helt i drawtonomy är webbläsaren källan till sanning. Ta till handskriven XML bara i utkanterna:
- Bygg scenen och storyboardet i drawtonomy — körfältsnätverk, deltagare, actions, triggers, end-/fail-villkor — och kör det för att bekräfta utfallet.
- Om du behöver en specfunktion som drawtonomy inte exporterar (en korsningsprimitiv, ett parametersvep, en anpassad styrenhet), exportera
.xosc-filen och redigera eller kodgenerera den delen för hand. - När du vill ha XML-diffar på bytenivå genom en stor katalog, håll den kanoniska XML:en i kod och använd drawtonomy för att bygga, granska och spela upp enskilda konkreta scenarier.
drawtonomy är där du bygger och kör scenariot; handskriven XML förblir nödlösningen för de hörn av specifikationen som drawtonomy ännu inte når.
En del av samma OpenSCENARIO-community
Section titled “En del av samma OpenSCENARIO-community”Handskriven XML är den grundläggande vägen för att skapa OpenSCENARIO — varje annat verktyg i ekosystemet producerar den (eller dess DSL-motsvarighet) i slutändan. drawtonomys exportfunktion, scenariogeneration, Scenic, RoadRunner, Blender DSC och övriga genererar alla XML:en vid någon punkt. Att läsa och skriva XML:en direkt är det som håller standarden en standard, och verktyg som producerar den drar nytta av det interoperabilitetsarbete communityn byggt upp kring den.
Relaterad läsning
Section titled “Relaterad läsning”- Scenarioredigerare — bygg actions, triggers och end-/fail-villkor i webbläsaren.
- Bygg ditt första scenario — ett filbyte från en tom kanvas.
- Vad är OpenSCENARIO?
- Användningsfall: OpenSCENARIO-redigerare
- Exportera till ASAM OpenDRIVE / OpenSCENARIO