Exportar múltiples escenas usando MATLAB
Este ejemplo muestra cómo exportar escenas de forma masiva desde un proyecto RoadRunner a uno de los formatos de archivo admitidos por RoadRunner. En este ejemplo, exportará escenas al formato de archivo ASAM OpenDRIVE® utilizando funciones de MATLAB® .
Para ejecutar este ejemplo, debe:
Tener una licencia de Automated Driving Toolbox®.
Tener licencia de RoadRunner y el producto instalado.
Haber creado una carpeta de proyecto RoadRunner .
Iniciar RoadRunner mediante programación
Para utilizar funciones de MATLAB para controlar RoadRunner mediante programación, utilice el objeto roadrunner . De forma predeterminada, roadrunner abre RoadRunner desde la carpeta de instalación predeterminada para la plataforma que está utilizando (ya sea Windows® o Linux®). Estas son las ubicaciones de instalación predeterminadas por plataforma:
Windows – C:\Archivos de programa\ RoadRunner R20NNx\bin\win64
Linux, Ubuntu® – /usr/local/RoadRunner_R20NNx/bin/glnxa64
R20NNx es la versión de MATLAB para la versión que está utilizando.
Si su instalación de RoadRunner está en una ubicación diferente a la ubicación predeterminada, use MATLAB settings API para personalizar el valor predeterminado de la carpeta de instalación de RoadRunner .
Exportar escena desde RoadRunner a ASAM OpenDRIVE
Exporte una escena de un proyecto RoadRunner al formato ASAM OpenDRIVE usando MATLAB.
Abra un proyecto en RoadRunner usando la función roadrunner especificando la ubicación en la que crear un proyecto. Este ejemplo supone que RoadRunner está instalado en su ubicación predeterminada en Windows.
Especifique la ruta a un proyecto existente. Por ejemplo, este código muestra la ruta a un proyecto ubicado en C:\RR\MyProject. La función devuelve un objeto roadrunner , rrApp, que proporciona funciones para realizar tareas básicas de flujo de trabajo, como abrir, cerrar y guardar escenas y proyectos.
projectFolder = "C:\RR\MyProject"; rrApp = roadrunner(projectFolder,InstallationFolder="C:\Program Files\RoadRunner R2022b\bin\win64");
Abra una escena en el proyecto usando la función openScene con el objeto roadrunner y la escena RoadRunner que desea abrir como argumentos de entrada. Este ejemplo utiliza la escena FourWaySignal.rrscene , que es una de las escenas incluidas de forma predeterminada en los proyectos de RoadRunner y se encuentra en la carpeta Scenes del proyecto.
sceneName = "FourWaySignal.rrscene";
openScene(rrApp,sceneName);Configure las opciones de exportación creando un objeto openDriveExportOptions para permitir la exportación de señales y objetos desde el archivo.
options = openDriveExportOptions(OpenDriveVersion=1.5,ExportSignals=true,ExportObjects=true);
Utilice la función exportScene para exportar la escena a ASAM OpenDRIVE. Especifique su objeto roadrunner , el nombre del archivo al que desea exportar la escena, el formato de exportación y las opciones de exportación como argumentos de entrada para la función exportScene .
filename = "FourWaySignal.xodr"; formatname = "OpenDRIVE"; exportScene(rrApp,filename,formatname,options);
Exporte múltiples escenas desde RoadRunner al formato ASAM OpenDRIVE
Exporte múltiples escenas en un proyecto RoadRunner al formato ASAM OpenDRIVE® usando MATLAB.
Abra un proyecto en RoadRunner usando la función roadrunner especificando la ubicación en la que crear un proyecto. Este ejemplo supone que RoadRunner está instalado en su ubicación predeterminada en Windows.
Especifique la ruta a un proyecto existente. Por ejemplo, este código muestra la ruta a un proyecto ubicado en C:\RR\MyProject. La función devuelve un objeto roadrunner , rrApp, que proporciona funciones para realizar tareas básicas de flujo de trabajo, como abrir, cerrar y guardar escenas y proyectos.
demoProj = fullfile('C:','DemoProject'); rrApp = roadrunner(demoProj,InstallationFolder="C:\Program Files\RoadRunner R2022b\bin\win64");
Especifique la ruta a los archivos de escena que desea exportar. Debes especificar la ruta a la carpeta Scenes en tu proyecto RoadRunner , que contiene todas las escenas de ese proyecto.
sceneFiles = dir(fullfile(demoProj,'Scenes','*.rrscene')); scenes = {sceneFiles.name};
Especifique la ruta a su carpeta de exportación. esta es la carpeta a la que RoadRunner exporta todos sus archivos de escenas. Itere a través de todos los archivos de escena, abriendo cada escena usando la función openScene y luego llamando a la función exportScene para exportar la escena abierta al formato ASAM OpenDRIVE.
exportFolder = fullfile('C:','OpenDRIVE'); for sndx = 1:numel(scenes) openScene(rrApp,scenes{sndx}); [~,fileName] = fileparts(scenes{sndx}); exportFilePath = [fullfile(exportFolder,fileName) '.xodr']; exportScene(rrApp,exportFilePath,'OpenDRIVE'); end
Una vez que se hayan exportado todos los archivos de escena, cierre la aplicación RoadRunner usando la función close .
close(rrApp);
Ampliar las opciones de exportación de RoadRunner
Para personalizar aún más el script, puede especificar configuraciones de exportación no predeterminadas o especificar otros formatos de archivo. Para obtener más detalles sobre los formatos admitidos, consulte la función exportScene . Para obtener flexibilidad adicional a la hora de exportar escenas, considere exportar la escena utilizando opciones de exportación personalizadas. Para más detalles, consulte la función exportCustomFormat .
Consulte también
roadrunner | openScene | exportScene | close