export

Экспортируйте дорожную сеть в OpenDRIVE

Описание

пример

export(scenario,'OpenDRIVE',filename) экспортирует дороги, маршруты и соединения в ведущем сценарии к формату файла OpenDRIVE® 1.4H. Могут быть изменения между исходным сценарием и экспортируемым сценарием. Для получения дополнительной информации смотрите Ограничения.

Примеры

свернуть все

Создайте ведущий сценарий.

inputScenario = drivingScenario;

Импортируйте дорожную сеть OpenStreetMap в ведущий сценарий. Для получения дополнительной информации о osm файле, см. [1].

fileName = 'chicago.osm';
roadNetwork(inputScenario,'OpenStreetMap',fileName);

Экспортируйте в файл OpenDRIVE.

fileName = 'chicago.xodr';
export(inputScenario,'OpenDRIVE',fileName);
Warning: There may be minor variation between the actual driving scenario and the exported OpenDRIVE road networks. For more information, see <a href="matlab:helpview(fullfile(docroot,'toolbox','driving','helptargets.map'),'exportOpenDriveCLI')">export</a>.

Считайте экспортируемый файл OpenDRIVE при помощи roadNetwork функция.

scenario = drivingScenario;
roadNetwork(scenario,'OpenDRIVE',fileName);

Постройте экспортируемый сценарий. Заметьте, что отображение для экспортируемой дорожной сети инвертируется по измерениям X и Y и не имеет границ.

figure
plot(inputScenario)
zoom(2);
title('Actual Scenario')

figure
plot(scenario)
zoom(2);
title('Exported Scenario')

Приложение

[1] osm файл загружается с https://www.openstreetmap.org, который обеспечивает доступ к полученным толпой данным о карте во всем мире. Данные лицензируются под Открытыми Данными палата общин Открытая Лицензия Базы данных (ODbL), https://opendatacommons.org/licenses/odbl/.

Создайте ведущий сценарий с одной дорогой, имеющей S-кривую.

scenario = drivingScenario;
roadcenters = [-35 20 0; -20 -20 0; 0 0 0; 20 20 0; 35 -20 0];

Создайте маршруты и добавьте их в дорогу.

lm = [laneMarking('Solid','Color','w') ...
     laneMarking('Dashed','Color','y') ...
     laneMarking('Dashed','Color','y') ...
     laneMarking('Solid','Color','w')];
ls = lanespec(3,'Marking',lm);
road(scenario,roadcenters,'Lanes',ls);

Постройте сценарий.

plot(scenario)

Экспортируйте дорожную сеть в сценарии к файлу OpenDRIVE.

fileName = 'scurveroad.xodr';
export(scenario,'OpenDRIVE',fileName)
Warning: There may be minor variation between the actual driving scenario and the exported OpenDRIVE road networks. For more information, see <a href="matlab:helpview(fullfile(docroot,'toolbox','driving','helptargets.map'),'exportOpenDriveCLI')">export</a>.

Можно импортировать файл OpenDRIVE к рабочему пространству MATLAB при помощи roadNetwork функция.

scenario = drivingScenario;
roadNetwork(scenario,'OpenDRIVE',fileName)
plot(scenario)

Входные параметры

свернуть все

Ведущий сценарий в виде drivingScenario объект. Ведущий сценарий должен содержать одну или несколько дорожных сетей для того, чтобы экспортировать его в формат файла OpenDRIVE.

Если ведущий сценарий не имеет технических требований маршрута, то export функционируйте присваивает спецификацию маршрута по умолчанию при экспорте в формат файла OpenDRIVE.

Имя целевого файла OpenDRIVE в виде вектора символов или строкового скаляра. Можно задать имя файла с или без расширения файла. Если вы принимаете решение задать расширение файла, расширением файла должен быть любой .xodr или .xml. Функция использует .xodr как значение по умолчанию. Если заданное имя файла, включая расширение файла уже существует, то функция перезаписывает данные в существующем файле с дорожной сетью, заданной в scenario аргумент.

Типы данных: char | string

Ограничения

  • export функция не экспортирует агентов и их свойства от исходного сценария до формата OpenDRIVE.

  • Кубический полином и параметрические типы геометрии кубического полинома в сценарии экспортируются как спиральные типы геометрии. Это вызывает некоторые изменения экспортируемой дорожной геометрии, если дорога является кривой дорогой. Например, на рисунке ниже, заметьте, что острые углы на входной дороге стали относительно сглаженными, когда экспортируется в формат OpenDRIVE.

    Инпут-РоудЭкспортируемая ОПЕНДРАЙВ-Роуд

    Original road

    Exported road

  • Соединения дорожной сети обрабатываются без информации о связи маршрута и так, формы соединения не могут быть точными в экспортируемом сценарии.

    Инпут-РоудЭкспортируемая ОПЕНДРАЙВ-Роуд

    Original junction

    Exported junction

  • Ограничения в импорте OpenDRIVE применяются к экспорту OpenDRIVE, если вы экспортируете ведущий объект сценария, который содержит импортированный сценарий OpenDRIVE. Можно импортировать сценарий OpenDRIVE к drivingScenario объект при помощи roadNetwork функция. Для получения информации об ограничениях в импорте OpenDRIVE смотрите roadNetwork.

Введенный в R2020b