Material
Description
The Material object represents an asset with the
Material asset type in the RoadRunner project. You can use the material assets to define the visual properties of
surfaces, sidewalks, lanes and other objects in a RoadRunner scene. For more information on material assets, see Material Assets (RoadRunner).
Creation
The getAsset function extracts
an object for the asset of the specified asset type at the specified path relative to the
Asset folder of the specified project. Specify the
assetType argument as "Material" to extract a
Material object.
Properties
This property is read-only.
Relative path to the material asset in the RoadRunner project, represented as a string scalar.
Examples
Use getAsset to extract a
Material object from your RoadRunner project. Then, use the newly created Material object to
specify a surface material for the Lane (RoadRunner)
object to the scene.
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.
rrApp = roadrunner(ProjectFolder="C:\RR\MyProject");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 (RoadRunner) 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.
Create a new RoadRunner scene in the current project by using the newScene
function, specifying the roadrunner object rrApp.
newScene(rrApp);
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, such as by adding and modifying road
and lanes components, using MATLAB.
rrApi = roadrunnerAPI(rrApp);
Extract the object for your scene from the Scene property of
the authoring API object rrApi. The extracted
Scene object enables you to specify the scene in which to add
scene elements such as roads and lanes.
scn = rrApi.Scene;
Add a horizontal line-arc curve road 100 meters in length to the scene by using
the addLineArcRoad function. Specify the positions of the road by
specifying the positions of its control points along the X- and Y-axes of the
RoadRunner local coordinate system. These control points define the positions of
the start and end of the road. You can modify the positions of the control points to
adjust the length and direction of the road relative to the scene origin. You can also
add control points in between the start and end points of the line-arc curve to adjust
the curvature and radius of the road curve.
controlPoints = [-50 0; 50 0]; rrHorizontalRoad = addLineArcRoad(scn,controlPoints);
Extract the reference lane of the road from the ReferenceLane
property of the road object rrHorizontalRoad. The reference lane
defines the center lane, or reference line, of a road in a RoadRunner scene. This lane has no width and serves as the basis for positioning
all other lanes, which RoadRunner arranges outward from the reference line.
refLane = rrHorizontalRoad.ReferenceLane;
Use the extracted refLane object to add lanes on either side of
the reference lane of the road using the addLaneToLeft and
addLaneToRight functions. Then, use the
LaneType and TravelDirection properties of the
added lanes to specify the type and travel direction, respectively, of each lane.
First, add a driving lane to the left of the horizontal road with a forward travel
direction.
horizontalLane1 = addLaneToLeft(refLane); horizontalLane1.LaneType = "driving"; horizontalLane1.TravelDirection = "forward";
Then, add another driving lane to the right of the horizontal road with a backward travel direction.
horizontalLane2 = addLaneToRight(refLane); horizontalLane2.LaneType = "driving"; horizontalLane2.TravelDirection = "backward";
Use the getAsset function to extract a
Material object, dirtMaterial, that represents
the Dirt2.rrmtl asset in the project prj. Then,
assign the material to the lane
horizontalLane2.
dirtMaterial = getAsset(prj,"Materials/Dirt2.rrmtl","Material"); horizontalLane2.Material = dirtMaterial;
More About
Once RoadRunner adds materials to the scene, you can use the exportScene (RoadRunner)
function to export the scene to one of the supported formats. To preserve the friction
information during export, you must first define Friction
as a metadata property for the corresponding material in the Library
Browser and assign the desired friction coefficient value. When you apply this
material to lane surfaces within the scene, RoadRunner associates the friction metadata as a part of the material definition used in
the scene.
During scene export, the export process reads the Friction
metadata associated with each material. When you export the scene to formats
such as .tif, RoadRunner embeds the friction metadata within the exported file. You can then parse the
exported .tif file to extract the friction information associated with
the materials used in the scene. This ensures that material-specific friction properties are
preserved and available for simulation workflows that require surface friction data.
Version History
Introduced in R2026a
See Also
Lane | PolygonMaterial | getAsset | addLaneMaterial | addPolygonMaterial
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)