|
maliput
|
Data structures for describing lane boundary markings.
Lane markings describe the visual and physical characteristics of the markings at lane boundaries. This includes painted lines, physical curbs, and other delineation features.
The design is influenced by OpenDRIVE road marking specification and OSI (Open Simulation Interface) lane boundary concepts.
Classes | |
| class | LaneBoundary |
| Represents a boundary between adjacent lanes or at the edge of a Segment. More... | |
| struct | LaneMarkingLine |
| Describes a single line within a lane marking. More... | |
| struct | LaneMarking |
| Describes the complete lane marking at a lane boundary. More... | |
| struct | LaneMarkingResult |
| Result of querying lane marking at a specific position or range. More... | |
Enumerations | |
| enum | LaneMarkingType { kUnknown = 0, kNone, kSolid, kBroken, kSolidSolid, kSolidBroken, kBrokenSolid, kBrokenBroken, kBottsDots, kGrass, kCurb, kEdge } |
| Describes the type/pattern of a lane marking line. More... | |
| enum | LaneMarkingWeight { kUnknown = 0, kStandard, kBold } |
| Describes the visual weight/thickness category of the marking. More... | |
| enum | LaneMarkingColor { kUnknown = 0, kWhite, kYellow, kOrange, kRed, kBlue, kGreen, kViolet } |
| Describes the color of the lane marking. More... | |
| enum | LaneChangePermission { kUnknown = 0, kAllowed, kToLeft, kToRight, kProhibited } |
| Describes the lane change permission indicated by the marking. More... | |
|
strong |
Describes the lane change permission indicated by the marking.
This represents the legal interpretation of the marking regarding lane changes. The permission is typically determined by the marking type (e.g., solid vs. broken lines).
The Rule API may provide more detailed lane change rules that complement this marking-based permission. The recommendation is to rely on the Rule API for comprehensive lane change logic, using this marking information as supplementary context if needed.
| Enumerator | |
|---|---|
| kUnknown | Unknown or unspecified permission. |
| kAllowed | Lane change permitted (crossing the marking is allowed). |
| kToLeft | Lane change only permitted towards the left (increasing r). |
| kToRight | Lane change only permitted towards the right (decreasing r). |
| kProhibited | Lane change prohibited (crossing the marking is not allowed). |
|
strong |
Describes the color of the lane marking.
Colors have different meanings depending on the country's traffic regulations. For example:
|
strong |
Describes the type/pattern of a lane marking line.
These types represent common road marking patterns found in road networks. The naming follows OpenDRIVE conventions where applicable.
|
strong |
Describes the visual weight/thickness category of the marking.
Weight affects the visual prominence of the marking. Bold markings are typically used to emphasize important boundaries.
| Enumerator | |
|---|---|
| kUnknown | Unknown or unspecified weight. |
| kStandard | Standard/normal width marking. |
| kBold | Wide/bold marking (typically 2x standard width). |