CARLA
载入中...
搜索中...
未找到
LibCarla
source
carla
road
element
LaneMarking.h
浏览该文件的文档.
1
// Copyright (c) 2017 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
#pragma once
// 只包含一次
8
9
#include <cstdint>
// 引入整数类型定义
10
#include <string>
// 引入字符串类型定义
11
12
namespace
carla
{
// 定义命名空间carla
13
namespace
road {
// 定义命名空间road
14
namespace
element {
// 定义命名空间element
15
16
class
RoadInfoMarkRecord;
// 前向声明RoadInfoMarkRecord类
17
18
struct
LaneMarking
{
// 定义LaneMarking结构体
19
20
enum class
Type
{
// 定义车道标记类型的枚举
21
Other
,
// 其他
22
Broken
,
// 断开的
23
Solid
,
// 实线
24
// (用于双实线)
25
SolidSolid
,
// 双实线
26
// (从内到外,例外:中心车道 - 从左到右)
27
SolidBroken
,
// 实线-断线
28
// (从内到外,例外:中心车道 - 从左到右)
29
BrokenSolid
,
// 断线-实线
30
// (从内到外,例外:中心车道 - 从左到右)
31
BrokenBroken
,
// 断线-断线
32
BottsDots
,
// Botts点
33
// (表示草地边缘)
34
Grass
,
// 草地
35
Curb
,
// 路缘石
36
None
// 无
37
};
38
39
enum class
Color
: uint8_t {
// 定义颜色的枚举
40
Standard
= 0u,
// (等同于“白色”)
41
Blue
= 1u,
// 蓝色
42
Green
= 2u,
// 绿色
43
Red
= 3u,
// 红色
44
White
=
Standard
,
// 白色
45
Yellow
= 4u,
// 黄色
46
Other
= 5u
// 其他
47
};
48
49
/// 可以用作标志。
50
enum class
LaneChange
: uint8_t {
// 定义车道变换的枚举
51
None
= 0x00,
// 00 - 无
52
Right
= 0x01,
// 01 - 向右
53
Left
= 0x02,
// 10 - 向左
54
Both
= 0x03
// 11 - 双向
55
};
56
57
explicit
LaneMarking
(
const
RoadInfoMarkRecord
&info);
// 构造函数,接受RoadInfoMarkRecord对象
58
59
Type
type
=
Type::None
;
// 车道标记类型,默认值为None
60
61
Color
color
=
Color::Standard
;
// 车道标记颜色,默认值为Standard(白色)
62
63
LaneChange
lane_change
=
LaneChange::None
;
// 车道变换标志,默认值为None
64
65
double
width
= 0.0;
// 车道标记宽度,默认值为0.0
66
67
std::string
GetColorInfoAsString
() {
// 获取颜色信息的字符串表示
68
switch
(
color
) {
// 根据颜色类型进行选择
69
case
Color::Yellow
:
// 如果颜色是黄色
70
return
std::string(
"yellow"
);
// 返回“yellow”
71
break
;
// 结束当前case
72
case
Color::Standard
:
// 如果颜色是标准(白色)
73
return
std::string(
"white"
);
// 返回“white”
74
break
;
// 结束当前case
75
default
:
// 默认情况
76
return
std::string(
"white"
);
// 返回“white”
77
break
;
// 结束当前case
78
}
79
return
std::string(
"white"
);
// 最终返回“white”
80
}
81
};
82
83
}
// namespace element
84
}
// namespace road
85
}
// namespace carla
carla::road::element::RoadInfoMarkRecord
每条车道在道路横截面内可以提供多个道路标记条目。 道路标记信息定义了车道外边界的线条样式。 对于左侧车道,这是左边界;对于右侧车道,这是右边界。 左右车道之间的分隔线样式由零号车道(即中央车道)的道路标...
Definition
RoadInfoMarkRecord.h:23
carla
CARLA模拟器的主命名空间。
Definition
Carla.cpp:139
carla::road::element::LaneMarking
Definition
LaneMarking.h:18
carla::road::element::LaneMarking::LaneChange
LaneChange
可以用作标志。
Definition
LaneMarking.h:50
carla::road::element::LaneMarking::LaneChange::Both
@ Both
carla::road::element::LaneMarking::LaneChange::None
@ None
carla::road::element::LaneMarking::LaneChange::Right
@ Right
carla::road::element::LaneMarking::LaneChange::Left
@ Left
carla::road::element::LaneMarking::GetColorInfoAsString
std::string GetColorInfoAsString()
Definition
LaneMarking.h:67
carla::road::element::LaneMarking::LaneMarking
LaneMarking(const RoadInfoMarkRecord &info)
Definition
LaneMarking.cpp:80
carla::road::element::LaneMarking::color
Color color
Definition
LaneMarking.h:61
carla::road::element::LaneMarking::width
double width
Definition
LaneMarking.h:65
carla::road::element::LaneMarking::type
Type type
Definition
LaneMarking.h:59
carla::road::element::LaneMarking::Type
Type
Definition
LaneMarking.h:20
carla::road::element::LaneMarking::Type::BrokenBroken
@ BrokenBroken
carla::road::element::LaneMarking::Type::Curb
@ Curb
carla::road::element::LaneMarking::Type::BottsDots
@ BottsDots
carla::road::element::LaneMarking::Type::Other
@ Other
carla::road::element::LaneMarking::Type::None
@ None
carla::road::element::LaneMarking::Type::BrokenSolid
@ BrokenSolid
carla::road::element::LaneMarking::Type::Grass
@ Grass
carla::road::element::LaneMarking::Type::Broken
@ Broken
carla::road::element::LaneMarking::Type::SolidSolid
@ SolidSolid
carla::road::element::LaneMarking::Type::Solid
@ Solid
carla::road::element::LaneMarking::Type::SolidBroken
@ SolidBroken
carla::road::element::LaneMarking::Color
Color
Definition
LaneMarking.h:39
carla::road::element::LaneMarking::Color::White
@ White
carla::road::element::LaneMarking::Color::Yellow
@ Yellow
carla::road::element::LaneMarking::Color::Blue
@ Blue
carla::road::element::LaneMarking::Color::Green
@ Green
carla::road::element::LaneMarking::Color::Standard
@ Standard
carla::road::element::LaneMarking::Color::Red
@ Red
carla::road::element::LaneMarking::lane_change
LaneChange lane_change
Definition
LaneMarking.h:63
制作者
1.10.0