Przejdź do głównej zawartości

drawtonomy vs ręcznie pisany XML OpenSCENARIO

Ręczne pisanie OpenSCENARIO XML to popularny przepływ pracy i dla wielu zastosowań właściwy.

Kiedy XML jest odpowiednią ścieżką:

  • Scenariusz jest mały i chcesz kontroli na poziomie bajtów.
  • Generujesz XML programowo z DSL lub potoku generowania kodu.
  • Potrzebujesz funkcji specyfikacji poza tym, co eksponują narzędzia wizualne — wyzwalacze warunkowe, przeglądy parametrów, niestandardowe kontrolery, złożone storyboardy, modele przepływu ruchu.
  • Współpracujesz nad scenariuszami przez git, gdzie ważne są stabilne różnice XML.

Do produkcyjnego tworzenia scenariuszy, ręcznie pisany lub generowany z kodu XML jest kanonicznym podejściem.

Podzbiór OpenSCENARIO 1.3, zgodnie z dokumentacją eksportera:

  • 2D odgórna sieć drogowa — pasy, skrzyżowania, proste linestring — wyeksportowana jako częściowy OpenDRIVE 1.8 .xodr.
  • Statyczne rozmieszczenie pojazdów, pieszych, sygnalizacji i oznakowania jako wpisy <ScenarioObject> / <Pedestrian>.
  • Proste ścieżki/trajektorie emitowane jako <FollowTrajectoryAction>.

Wyeksportowany .xosc odtwarza proste sceny w esmini. To punkt startowy, nie gotowy scenariusz.

Udokumentowane jako pozycje roadmapy w dokumentacji eksportera:

  • Emisja skrzyżowań OpenDRIVE (<junction>).
  • Znaki drogowe jako wpisy <signal>.
  • Profile przyspieszenia/hamowania, zdarzenia zatrzymania, ścieżki uwzględniające sygnalizację, akcje zmiany pasa, złożone storyboardy z wieloma aktorami.
  • Wyzwalacze warunkowe, przeglądy parametrów, niestandardowe lub sterowane ML kontrolery, gęste przepływy ruchu.

Dla któregokolwiek z tych elementów napiszesz XML ręcznie lub wygenerujesz go z kodu.

  1. Naszkicuj układ w drawtonomy, żeby ustalić sieć pasów i rozmieszczenie uczestników.
  2. Wyeksportuj paczkę esmini i potwierdź, że prosta wersja odtwarza się.
  3. Otwórz .xosc w edytorze tekstu i dodaj części, których drawtonomy nie wyraża.
  4. Zachowaj plik źródłowy drawtonomy jako rysunek do planu testów/publikacji/slajdu.

drawtonomy to szkic. XML jest źródłem prawdy dla jakiegokolwiek nietrywialnego scenariusza.

Ręcznie pisany XML jest fundamentalną ścieżką tworzenia dla OpenSCENARIO — każde inne narzędzie w ekosystemie ostatecznie go produkuje (lub jego odpowiednik DSL). Eksporter drawtonomy, scenariogeneration, Scenic, RoadRunner, Blender DSC i reszta wszystkie emitują XML w pewnym momencie. Czytanie i pisanie XML bezpośrednio to sposób, w jaki standard pozostaje standardem, a narzędzia go produkujące korzystają z interoperacyjności między narzędziami zbudowanej przez społeczność.