Create a roadrunner object, specifying the
path to an existing project. For example, this code shows the path to a project, on a
Windows® machine, located at "C:\RR\MyProject". This code assumes that
RoadRunner is installed in the default location, and returns an object,
rrApp, that provides functions for performing basic tasks such as
opening, closing, and saving scenes and projects.
Note
If you are opening RoadRunner from MATLAB for the first time, or if you have changed the RoadRunner installation location since you last opened it from MATLAB, you can use the roadrunnerSetup function to specify new default
project and installation folders to use when opening RoadRunner. You can save these folders between MATLAB sessions by selecting the Across MATLAB
sessions option from the corresponding drop down.
Open an existing scene in RoadRunner by using the openScene function, specifying the
roadrunner object rrApp and the filename of the
specific scene that you want to open. Then, use the newScenario function to
create a new
scenario.
Create an object for the RoadRunner authoring API, rrApi, that references the object for the
current RoadRunner instance rrApp. The rrApi object enables you
to programmatically author scenes and scenarios, such as by adding and modifying roads, actors,
and logic components, using MATLAB.
Extract the scene and scenario objects from the
Scene and
Scenario properties of the authoring API object
rrApi,
respectively. The extracted
Scene object enables you to specify the scene in
which to add scene components such as roads and lanes. The extracted
Scenario (RoadRunner Scenario) object
enables you to specify the scenario in which to add scenario components such as actors and
logic.
Extract the object for your
RoadRunner project from the
Project property of the authoring API object
rrApi. The extracted
Project object enables you to
specify the project folder for the current
RoadRunner session from which to retrieve asset objects. You can use the asset objects to
assign assets to roads in your scene, or to actors in your
scenario.
To get a PhaseLogic object, rrLogic, that
represents the RoadRunner scenario logic, extract the PhaseLogic property of
the scenario object
scnro.
To modify the default scenario Simulation Time condition, first
extract the RootPhase property of the phase logic object
rrLogic. Then, extract the
SimulationTimeCondition object from the
EndCondition property of the root phase
rootPhs.
To set a new simulation time for the scenario, specify a value for the
Time property of the SimulationTimeCondition
object
simTime.
To simulate the scenario, you must first add a Vehicle actor to
the scenario. Use the getAsset function to extract a
VehicleAsset object, mySedan, that represents
the Sedan.fbx asset in the project prj. Then,
use the addActor function, specifying the scenario object
scnro, the asset object, and the location at which to place the
actor.
Place the vehicle actor car at the world origin, specified as
[0 0 0]. If you do not know the exact coordinates at which you
want to place the actor, you can relocate the actor based on an existing point or
anchor. For example, you can use findSceneAnchor to reference an
existing anchor in the scene, then use anchorToPoint to relocate
the actor from its current location to the location specified by the referenced
anchor. For more information, see findSceneAnchor and
anchorToPoint.
Run the simulation by using the simulateScenario function.
RoadRunner simulates the scenario for the time specified by
simTime.