CARLA
载入中...
搜索中...
未找到
LibCarla
source
carla
rpc
WheelTelemetryData.h
浏览该文件的文档.
1
// Copyright (c) 2022 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 "
carla/MsgPack.h
"
// 包含 MsgPack 库的头文件
10
11
namespace
carla
{
// 定义 carla 命名空间
12
namespace
rpc {
// 定义 rpc 子命名空间
13
14
class
WheelTelemetryData
{
// 定义 WheelTelemetryData 类
15
public
:
16
17
WheelTelemetryData
() =
default
;
// 默认构造函数
18
19
// 带参数的构造函数,用于初始化类成员
20
WheelTelemetryData
(
21
float
tire_friction
,
// 轮胎摩擦力
22
float
lat_slip
,
// 侧滑
23
float
long_slip
,
// 纵向滑动
24
float
omega
,
// 角速度
25
float
tire_load
,
// 轮胎负载
26
float
normalized_tire_load
,
// 归一化轮胎负载
27
float
torque
,
// 扭矩
28
float
long_force
,
// 纵向力
29
float
lat_force
,
// 横向力
30
float
normalized_long_force
,
// 归一化纵向力
31
float
normalized_lat_force
)
// 归一化横向力
32
:
tire_friction
(
tire_friction
),
// 初始化轮胎摩擦力
33
lat_slip
(
lat_slip
),
// 初始化侧滑
34
long_slip
(
long_slip
),
// 初始化纵向滑动
35
omega
(
omega
),
// 初始化角速度
36
tire_load
(
tire_load
),
// 初始化轮胎负载
37
normalized_tire_load
(
normalized_tire_load
),
// 初始化归一化轮胎负载
38
torque
(
torque
),
// 初始化扭矩
39
long_force
(
long_force
),
// 初始化纵向力
40
lat_force
(
lat_force
),
// 初始化横向力
41
normalized_long_force
(
normalized_long_force
),
// 初始化归一化纵向力
42
normalized_lat_force
(
normalized_lat_force
) {}
// 初始化归一化横向力
43
44
// 类成员变量定义及默认值
45
float
tire_friction
= 0.0f;
// 轮胎摩擦力
46
float
lat_slip
= 0.0f;
// 侧滑
47
float
long_slip
= 0.0f;
// 纵向滑动
48
float
omega
= 0.0f;
// 角速度
49
float
tire_load
= 0.0f;
// 轮胎负载
50
float
normalized_tire_load
= 0.0f;
// 归一化轮胎负载
51
float
torque
= 0.0f;
// 扭矩
52
float
long_force
= 0.0f;
// 纵向力
53
float
lat_force
= 0.0f;
// 横向力
54
float
normalized_long_force
= 0.0f;
// 归一化纵向力
55
float
normalized_lat_force
= 0.0f;
// 归一化横向力
56
57
// 不同对象比较运算符重载
58
bool
operator!=
(
const
WheelTelemetryData
&rhs)
const
{
59
return
60
tire_friction
!= rhs.
tire_friction
||
// 比较轮胎摩擦力
61
lat_slip
!= rhs.
lat_slip
||
// 比较侧滑
62
long_slip
!= rhs.
long_slip
||
// 比较纵向滑动
63
omega
!= rhs.
omega
||
// 比较角速度
64
tire_load
!= rhs.
tire_load
||
// 比较轮胎负载
65
normalized_tire_load
!= rhs.
normalized_tire_load
||
// 比较归一化轮胎负载
66
torque
!= rhs.
torque
||
// 比较扭矩
67
long_force
!= rhs.
long_force
||
// 比较纵向力
68
lat_force
!= rhs.
lat_force
||
// 比较横向力
69
normalized_long_force
!= rhs.
normalized_long_force
||
// 比较归一化纵向力
70
normalized_lat_force
!= rhs.
normalized_lat_force
;
// 比较归一化横向力
71
}
72
73
// 相等运算符重载
74
bool
operator==
(
const
WheelTelemetryData
&rhs)
const
{
75
return
!(*
this
!= rhs);
// 如果不相等则返回 false
76
}
77
78
#ifdef LIBCARLA_INCLUDED_FROM_UE4
// 如果定义了 LIBCARLA_INCLUDED_FROM_UE4
79
80
// 构造函数,将 FWheelTelemetryData 转换为 WheelTelemetryData
81
WheelTelemetryData
(
const
FWheelTelemetryData
&TelemetryData)
82
:
tire_friction
(TelemetryData.TireFriction),
// 初始化轮胎摩擦力
83
lat_slip
(TelemetryData.LatSlip),
// 初始化侧滑
84
long_slip
(TelemetryData.LongSlip),
// 初始化纵向滑动
85
omega
(TelemetryData.Omega),
// 初始化角速度
86
tire_load
(TelemetryData.TireLoad),
// 初始化轮胎负载
87
normalized_tire_load
(TelemetryData.NormalizedTireLoad),
// 初始化归一化轮胎负载
88
torque
(TelemetryData.Torque),
// 初始化扭矩
89
long_force
(TelemetryData.LongForce),
// 初始化纵向力
90
lat_force
(TelemetryData.LatForce),
// 初始化横向力
91
normalized_long_force
(TelemetryData.NormalizedLongForce),
// 初始化归一化纵向力
92
normalized_lat_force
(TelemetryData.NormalizedLatForce) {}
// 初始化归一化横向力
93
94
// 类型转换操作符,将 WheelTelemetryData 转换为 FWheelTelemetryData
95
operator
FWheelTelemetryData
()
const
{
96
FWheelTelemetryData
TelemetryData;
// 创建 FWheelTelemetryData 对象
97
TelemetryData.
TireFriction
=
tire_friction
;
// 设置轮胎摩擦力
98
TelemetryData.
LatSlip
=
lat_slip
;
// 设置侧滑
99
TelemetryData.
LongSlip
=
long_slip
;
// 设置纵向滑动
100
TelemetryData.
Omega
=
omega
;
// 设置角速度
101
TelemetryData.
TireLoad
=
tire_load
;
// 设置轮胎负载
102
TelemetryData.
NormalizedTireLoad
=
normalized_tire_load
;
// 设置归一化轮胎负载
103
TelemetryData.
Torque
=
torque
;
// 设置扭矩
104
TelemetryData.
LongForce
=
long_force
;
// 设置纵向力
105
TelemetryData.
LatForce
=
lat_force
;
// 设置横向力
106
TelemetryData.
NormalizedLongForce
=
normalized_long_force
;
// 设置归一化纵向力
107
TelemetryData.
NormalizedLatForce
=
normalized_lat_force
;
// 设置归一化横向力
108
109
return
TelemetryData;
// 返回 FWheelTelemetryData 对象
110
}
111
#endif
112
113
// 使用 MsgPack 库定义序列化数据结构
114
MSGPACK_DEFINE_ARRAY(
tire_friction
,
115
lat_slip
,
116
long_slip
,
117
omega
,
118
tire_load
,
119
normalized_tire_load
,
120
torque
,
121
long_force
,
122
lat_force
,
123
normalized_long_force
,
124
normalized_lat_force
)
125
};
126
127
}
// namespace rpc
128
}
// namespace carla
MsgPack.h
carla::rpc::WheelTelemetryData
Definition
WheelTelemetryData.h:14
carla::rpc::WheelTelemetryData::normalized_lat_force
float normalized_lat_force
Definition
WheelTelemetryData.h:55
carla::rpc::WheelTelemetryData::WheelTelemetryData
WheelTelemetryData(const FWheelTelemetryData &TelemetryData)
Definition
WheelTelemetryData.h:81
carla::rpc::WheelTelemetryData::lat_slip
float lat_slip
Definition
WheelTelemetryData.h:46
carla::rpc::WheelTelemetryData::tire_load
float tire_load
Definition
WheelTelemetryData.h:49
carla::rpc::WheelTelemetryData::lat_force
float lat_force
Definition
WheelTelemetryData.h:53
carla::rpc::WheelTelemetryData::operator==
bool operator==(const WheelTelemetryData &rhs) const
Definition
WheelTelemetryData.h:74
carla::rpc::WheelTelemetryData::operator!=
bool operator!=(const WheelTelemetryData &rhs) const
Definition
WheelTelemetryData.h:58
carla::rpc::WheelTelemetryData::omega
float omega
Definition
WheelTelemetryData.h:48
carla::rpc::WheelTelemetryData::WheelTelemetryData
WheelTelemetryData(float tire_friction, float lat_slip, float long_slip, float omega, float tire_load, float normalized_tire_load, float torque, float long_force, float lat_force, float normalized_long_force, float normalized_lat_force)
Definition
WheelTelemetryData.h:20
carla::rpc::WheelTelemetryData::normalized_long_force
float normalized_long_force
Definition
WheelTelemetryData.h:54
carla::rpc::WheelTelemetryData::torque
float torque
Definition
WheelTelemetryData.h:51
carla::rpc::WheelTelemetryData::long_force
float long_force
Definition
WheelTelemetryData.h:52
carla::rpc::WheelTelemetryData::tire_friction
float tire_friction
Definition
WheelTelemetryData.h:45
carla::rpc::WheelTelemetryData::long_slip
float long_slip
Definition
WheelTelemetryData.h:47
carla::rpc::WheelTelemetryData::normalized_tire_load
float normalized_tire_load
Definition
WheelTelemetryData.h:50
carla::rpc::WheelTelemetryData::WheelTelemetryData
WheelTelemetryData()=default
carla
CARLA模拟器的主命名空间。
Definition
Carla.cpp:139
FWheelTelemetryData
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:15
FWheelTelemetryData::LatSlip
float LatSlip
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:29
FWheelTelemetryData::Omega
float Omega
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:37
FWheelTelemetryData::NormalizedTireLoad
float NormalizedTireLoad
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:46
FWheelTelemetryData::Torque
float Torque
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:50
FWheelTelemetryData::TireLoad
float TireLoad
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:41
FWheelTelemetryData::LongForce
float LongForce
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:54
FWheelTelemetryData::NormalizedLongForce
float NormalizedLongForce
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:62
FWheelTelemetryData::NormalizedLatForce
float NormalizedLatForce
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:66
FWheelTelemetryData::LatForce
float LatForce
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:58
FWheelTelemetryData::LongSlip
float LongSlip
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:33
FWheelTelemetryData::TireFriction
float TireFriction
Definition
Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/VehicleTelemetryData.h:22
制作者
1.10.0