roadrunner.hdmap.CurveMarking
Description
A roadrunner.hdmap.CurveMarking object enables you to define a
curve marking feature in a RoadRunner HD Map scene model.
Creation
Syntax
Description
creates an empty curve marking.curveMarking = roadrunner.hdmap.CurveMarking
sets the properties of the curve marking using one or more name-value arguments. For
example, curveMarking = roadrunner.hdmap.CurveMarking(Name=Value)ID="CurveMarking1" sets the ID of the curve marking element to
"CurveMarking1".
Properties
ID of the curve marking element, specified as a character vector or string scalar.
Example: rrMap.CurveMarkings =
roadrunner.hdmap.CurveMarking(ID="CurveMarking1")
creates a curve marking with ID "CurveMarking1" in a RoadRunner HD Map.
Data Types: char | string
3D coordinates of the curve marking points, specified as a three element vector. You must specify coordinates for at least two points.
Data Types: double
Type of curve marking, specified as a roadrunner.hdmap.Reference object.
Option to flip the curve marking orientation, specified as a logical 0
(false) or 1 (true). Set this property to
true to laterally flip the order of the curve marking stripes. This
option is applicable only for curve marking types with more than one stripe.
Data Types: logical
Option to reverse the curve marking orientation, specified as a logical 0
(false) or 1 (true). Set this property to
true to reverse the orientation of curve markings longitudinally,
causing the tool to draw the markings from end to start. This option is applicable only
for marking types with more than one stripe.
Data Types: logical
User-defined ancillary data, specified as a
roadrunner.hdmap.Metadata object or a vector of
roadrunner.hdmap.Metadata objects. Use a vector of
roadrunner.hdmap.Metadata objects to assign multiple user-defined
parameters to a curve marking object.
Examples
Create an empty RoadRunner HD Map as a default roadrunnerHDMap object.
rrMap = roadrunnerHDMap
rrMap =
roadrunnerHDMap with properties:
Author: ""
GeoReference: [0 0]
GeographicBoundary: []
Lanes: [0×1 roadrunner.hdmap.Lane]
SpeedLimits: [0×1 roadrunner.hdmap.SpeedLimit]
LaneBoundaries: [0×1 roadrunner.hdmap.LaneBoundary]
LaneGroups: [0×1 roadrunner.hdmap.LaneGroup]
LaneMarkings: [0×1 roadrunner.hdmap.LaneMarking]
Junctions: [0×1 roadrunner.hdmap.Junction]
BarrierTypes: [0×1 roadrunner.hdmap.BarrierType]
Barriers: [0×1 roadrunner.hdmap.Barrier]
SignTypes: [0×1 roadrunner.hdmap.SignType]
Signs: [0×1 roadrunner.hdmap.Sign]
StaticObjectTypes: [0×1 roadrunner.hdmap.StaticObjectType]
StaticObjects: [0×1 roadrunner.hdmap.StaticObject]
StencilMarkingTypes: [0×1 roadrunner.hdmap.StencilMarkingType]
StencilMarkings: [0×1 roadrunner.hdmap.StencilMarking]
CurveMarkingTypes: [0×1 roadrunner.hdmap.CurveMarkingType]
CurveMarkings: [0×1 roadrunner.hdmap.CurveMarking]
SignalTypes: [0×1 roadrunner.hdmap.SignalType]
Signals: [0×1 roadrunner.hdmap.Signal]
Create a curve marking by using a roadrunner.hdmap.CurveMarking object. Specify the curve marking ID.
rrMap.CurveMarkings = roadrunner.hdmap.CurveMarking(ID="CurveMarking1")rrMap =
roadrunnerHDMap with properties:
Author: ""
GeoReference: [0 0]
GeographicBoundary: []
Lanes: [0×1 roadrunner.hdmap.Lane]
SpeedLimits: [0×1 roadrunner.hdmap.SpeedLimit]
LaneBoundaries: [0×1 roadrunner.hdmap.LaneBoundary]
LaneGroups: [0×1 roadrunner.hdmap.LaneGroup]
LaneMarkings: [0×1 roadrunner.hdmap.LaneMarking]
Junctions: [0×1 roadrunner.hdmap.Junction]
BarrierTypes: [0×1 roadrunner.hdmap.BarrierType]
Barriers: [0×1 roadrunner.hdmap.Barrier]
SignTypes: [0×1 roadrunner.hdmap.SignType]
Signs: [0×1 roadrunner.hdmap.Sign]
StaticObjectTypes: [0×1 roadrunner.hdmap.StaticObjectType]
StaticObjects: [0×1 roadrunner.hdmap.StaticObject]
StencilMarkingTypes: [0×1 roadrunner.hdmap.StencilMarkingType]
StencilMarkings: [0×1 roadrunner.hdmap.StencilMarking]
CurveMarkingTypes: [0×1 roadrunner.hdmap.CurveMarkingType]
CurveMarkings: [1×1 roadrunner.hdmap.CurveMarking]
SignalTypes: [0×1 roadrunner.hdmap.SignalType]
Signals: [0×1 roadrunner.hdmap.Signal]
Add a curve marking to a road in a RoadRunner HD Map, and build a RoadRunner scene using the HD Map.
Create an empty RoadRunner HD Map by using the roadrunnerHDMap object.
rrMap = roadrunnerHDMap;
Create a road lane 50 meters in length using the roadrunner.hdmap.Lane object. Specify the lane ID, coordinates defining the centerline of the lane, driving direction, and lane type.
rrMap.Lanes(1) = roadrunner.hdmap.Lane(ID="Lane",Geometry=[0 0; 0 50],TravelDirection="Forward",LaneType="Driving");
Create the lane boundaries of the road using the roadrunner.hdmap.LaneBoundary object. For each boundary, specify the lane ID and the coordinates that define the points of the lane boundary.
rrMap.LaneBoundaries(1) = roadrunner.hdmap.LaneBoundary(ID="Left",Geometry=[-5 0; -5 50]); rrMap.LaneBoundaries(2) = roadrunner.hdmap.LaneBoundary(ID="Right",Geometry=[5 0; 5 50]);
Link the lane boundaries to the lane. Define the left and the right lane boundaries for the lane, and specify the alignment between the lane and lane boundaries.
leftBoundary(rrMap.Lanes(1),"Left",Alignment="Forward"); rightBoundary(rrMap.Lanes(1),"Right",Alignment="Forward");
To add a dashed single white curve marking to the road, first extract the corresponding curve marking asset by using the roadrunner.hdmap.RelativeAssetPath object. For more information about these assets, see RoadRunner Asset Types (RoadRunner).
pathCurveMarking = roadrunner.hdmap.RelativeAssetPath(AssetPath="Assets/Markings/ContinentalCrosswalk.rrcws");Next, create a dashed single white curve marking element that refers to the extracted lane marking asset using the roadrunner.hdmap.CurveMarkingType object. Specify the ID and the path to the dashed single white asset.
rrMap.CurveMarkingTypes(1) = roadrunner.hdmap.CurveMarkingType(ID="CrossWalkMarking",AssetPath=pathCurveMarking);Create a reference to the curve marking using the roadrunner.hdmap.Reference object.
curveMarkingRef = roadrunner.hdmap.Reference(ID="CrossWalkMarking");Now, add a crosswalk toward the right side of the road in the HD Map by creating a CurveMarking object and specifying its geometry and marking type reference.
rrMap.CurveMarkings(1) = roadrunner.hdmap.CurveMarking(ID="CrossWalkMarking",Geometry=[3 0; 3 50],MarkingTypeReference=curveMarkingRef);Write the modified HD Map to a binary file.
filename = "MyMap.rrhd";
write(rrMap,filename)To open RoadRunner using MATLAB®, first specify the path to your RoadRunner project. This code shows the path for a sample project folder location in Windows®. If you are using RoadRunner for the first time, you must install RoadRunner and activate your RoadRunner license. For more information, see Install and Activate RoadRunner (RoadRunner).
rrProjectPath = "C:\RR\MyProject";Specify the path to your local RoadRunner installation folder. This code shows the path for the default installation location in Windows.
rrAppPath = "C:\Program Files\RoadRunner R2025b\bin\win64";Open RoadRunner using the roadrunner object from the MATLAB command line. Alternatively, you can start the RoadRunner application interactively, using the roadrunnerSetup (RoadRunner) function. This function opens a dialog box to specify the project folder and installation folder to use when opening RoadRunner.
rrApp = roadrunner(rrProjectPath,InstallationFolder=rrAppPath);
Import the RoadRunner HD Map file MyMap.rrhd into your RoadRunner scene, and build the RoadRunner HD Map data. Before you build the scene, you must activate your RoadRunner Scene Builder license. RoadRunner Scene Builder is an add-on product that requires an addition to your RoadRunner license. For more details, see RoadRunner Scene Builder.
file = fullfile(pwd,"MyMap.rrhd"); importScene(rrApp,file,"RoadRunner HD Map");
This figure shows the built scene in the RoadRunner canvas.

Version History
Introduced in R2024b
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.
Seleziona un sito web
Seleziona un sito web per visualizzare contenuto tradotto dove disponibile e vedere eventi e offerte locali. In base alla tua area geografica, ti consigliamo di selezionare: .
Puoi anche selezionare un sito web dal seguente elenco:
Come ottenere le migliori prestazioni del sito
Per ottenere le migliori prestazioni del sito, seleziona il sito cinese (in cinese o in inglese). I siti MathWorks per gli altri paesi non sono ottimizzati per essere visitati dalla tua area geografica.
Americhe
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- 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)