CARLA
Loading...
Searching...
No Matches
ModelStrings.cpp
Go to the documentation of this file.
1// Copyright (c) 2026 Computer Vision Center (CVC) at the Universitat Autonoma
2// de Barcelona (UAB).
3//
4// This work is licensed under the terms of the MIT license.
5// For a copy, see <https://opensource.org/licenses/MIT>.
6
7#include "Model.h"
8
9namespace twinmodel {
10
11 const char *ToString(LaneType type) {
12 switch (type) {
13 case LaneType::Driving: return "driving";
14 case LaneType::Sidewalk: return "sidewalk";
15 case LaneType::Shoulder: return "shoulder";
16 case LaneType::Parking: return "parking";
17 case LaneType::Biking: return "biking";
18 case LaneType::Border: return "border";
19 case LaneType::Restricted: return "restricted";
20 case LaneType::Median: return "median";
21 case LaneType::None: break;
22 }
23 return "none";
24 }
25
26 const char *ToString(Direction direction) {
27 switch (direction) {
28 case Direction::Forward: return "forward";
29 case Direction::Backward: return "backward";
30 case Direction::Both: break;
31 }
32 return "both";
33 }
34
35 const char *ToString(MarkingKind kind) {
36 switch (kind) {
37 case MarkingKind::Solid: return "solid";
38 case MarkingKind::Broken: return "broken";
39 case MarkingKind::SolidSolid: return "solid solid";
40 case MarkingKind::SolidBroken: return "solid broken";
41 case MarkingKind::BrokenSolid: return "broken solid";
42 case MarkingKind::BrokenBroken: return "broken broken";
43 case MarkingKind::None: break;
44 }
45 return "none";
46 }
47
48 const char *ToString(MarkingColor color) {
49 return (color == MarkingColor::Yellow) ? "yellow" : "white";
50 }
51
53 switch (kind) {
54 case SignalKind::TrafficLight: return SignalType{"1000001", "-1", true};
55 case SignalKind::TrafficLightPedestrian: return SignalType{"1000002", "-1", true};
56 case SignalKind::Stop: return SignalType{"206", "-1", false};
57 case SignalKind::Yield: return SignalType{"205", "-1", false};
58 case SignalKind::PriorityRoad: return SignalType{"306", "-1", false};
59 case SignalKind::SpeedLimit: return SignalType{"274", "", false};
60 case SignalKind::Crosswalk: break;
61 }
62 return SignalType{"", "-1", false};
63 }
64
66 return (point == ContactPoint::End) ? "end" : "start";
67 }
68
69} // namespace twinmodel
geom::Point point
Definition LaneGraph.cpp:41
SignalKind
OpenDRIVE type/subtype follow road/SignalType.h; the crosswalk is not a signal in CARLA but an <objec...
Definition Model.h:46
MarkingColor
Definition Model.h:38
Direction
Definition Model.h:34
ContactPoint
Definition Model.h:40
SignalType GetSignalType(SignalKind kind)
MarkingKind
Definition Model.h:36
const char * ToString(LaneType type)