CARLA
 
载入中...
搜索中...
未找到
Public 类型 | Public 成员函数 | Private 属性 | 所有成员列表
carla::client::Vehicle类 参考

车辆类的前向声明,用于在LaneInvasionSensor类中可能的引用。 更多...

#include <Vehicle.h>

+ 类 carla::client::Vehicle 继承关系图:
+ carla::client::Vehicle 的协作图:

Public 类型

using AckermannControl = rpc::VehicleAckermannControl
 
using Control = rpc::VehicleControl
 
using LightState = rpc::VehicleLightState::LightState
 
using PhysicsControl = rpc::VehiclePhysicsControl
 
using TelemetryData = rpc::VehicleTelemetryData
 
using TM = traffic_manager::TrafficManager
 
using VehicleDoor = rpc::VehicleDoor
 
using WheelLocation = carla::rpc::VehicleWheelLocation
 

Public 成员函数

void ApplyAckermannControl (const AckermannControl &control)
 应用 控制此车辆.
 
void ApplyAckermannControllerSettings (const rpc::AckermannControllerSettings &settings)
 应用 Ackermann 控制设置给此车辆
 
void ApplyControl (const Control &control)
 应用 控制此车辆.
 
void ApplyPhysicsControl (const PhysicsControl &physics_control)
 给此车辆应用物理控制.
 
void CloseDoor (const VehicleDoor door_idx)
 在车中关门
 
void EnableCarSim (std::string simfile_path)
 如果可用,启用CarSim模拟
 
void EnableChronoPhysics (uint64_t MaxSubsteps, float MaxSubstepDeltaTime, std::string VehicleJSON="", std::string PowertrainJSON="", std::string TireJSON="", std::string BaseJSONPath="")
 
rpc::AckermannControllerSettings GetAckermannControllerSettings () const
 返回最后应用于车辆的 Ackermann controller 设置.
 
Control GetControl () const
 返回最后应用于车辆的控制.
 
rpc::VehicleFailureState GetFailureState () const
 返回车辆的故障状态
 
LightState GetLightState () const
 返回当前车辆的打开灯(LightState).
 
PhysicsControl GetPhysicsControl () const
 返回车辆最后应用的物理控制.
 
float GetSpeedLimit () const
 返回当前影响该车辆的速度限制.
 
TelemetryData GetTelemetryData () const
 返回车辆的遥测数据.
 
SharedPtr< TrafficLightGetTrafficLight () const
 检索当前影响该车辆的交通灯.
 
rpc::TrafficLightState GetTrafficLightState () const
 返回当前影响该车辆的交通灯的状态.
 
float GetWheelSteerAngle (WheelLocation wheel_location)
 从车辆轮子返回一个 旋转
 
bool IsAtTrafficLight ()
 返回交通灯是否正在影响该车辆.
 
void OpenDoor (const VehicleDoor door_idx)
 在车中开门
 
void RestorePhysXPhysics ()
 
void SetAutopilot (bool enabled=true, uint16_t tm_port=TM_DEFAULT_PORT)
 开关车辆的自动驾驶仪.
 
void SetLightState (const LightState &light_state)
 给车辆设置一个 LightState.
 
void SetWheelSteerDirection (WheelLocation wheel_location, float angle_in_deg)
 给车辆轮子一个 旋转 (影响汽车的骨骼框架,而不是物理)
 
void ShowDebugTelemetry (bool enabled=true)
 开关车辆的自动驾驶仪.
 
void UseCarSimRoad (bool enabled)
 允许使用CarSim内部道路定义,而不是虚幻引擎的
 
 Vehicle (ActorInitializer init)
 
- Public 成员函数 继承自 carla::client::Actor
 Actor (ActorInitializer init)
 
void AddAngularImpulse (const geom::Vector3D &vector)
 对行为体施加角冲量。
 
void AddForce (const geom::Vector3D &force)
 在行为体的质心施加力。
 
void AddForce (const geom::Vector3D &force, const geom::Vector3D &location)
 在某个位置对行为体施加力。
 
void AddImpulse (const geom::Vector3D &impulse, const geom::Vector3D &location)
 在某个位置对行为体施加冲量。
 
void AddImpulse (const geom::Vector3D &vector)
 在行为体的质心施加冲量。
 
void AddTorque (const geom::Vector3D &vector)
 对行为体施加扭矩。
 
virtual bool Destroy ()
 告诉模拟器销毁该行为体,并返回行为体是否成功被销毁的结果。
 
void DisableConstantVelocity ()
 禁用恒定速度模式。
 
void EnableConstantVelocity (const geom::Vector3D &vector)
 启用恒定速度模式。
 
geom::Vector3D GetAcceleration () const
 返回行为体的当前3D加速度。
 
rpc::ActorState GetActorState () const
 
geom::Vector3D GetAngularVelocity () const
 返回行为体的当前3D角速度。
 
std::vector< std::string > GetBoneNames () const
 
std::vector< geom::TransformGetBoneRelativeTransforms () const
 
std::vector< geom::TransformGetBoneWorldTransforms () const
 
std::vector< std::string > GetComponentNames () const
 
geom::Transform GetComponentRelativeTransform (const std::string componentName) const
 获取指定组件相对于Actor的相对坐标变换。 这个函数返回一个包含位置、旋转和平移信息的Transform对象, 表示指定组件相对于Actor原点的位置和方向。
 
geom::Transform GetComponentWorldTransform (const std::string componentName) const
 获取指定组件的世界坐标变换。 这个函数返回一个包含位置、旋转和平移信息的Transform对象, 表示指定组件在世界坐标系中的位置和方向。
 
geom::Location GetLocation () const
 返回行为体的当前位置。
 
std::vector< std::string > GetSocketNames () const
 
std::vector< geom::TransformGetSocketRelativeTransforms () const
 
std::vector< geom::TransformGetSocketWorldTransforms () const
 
geom::Transform GetTransform () const
 返回行为体的当前变换(位置和方向)。
 
geom::Vector3D GetVelocity () const
 返回行为体的当前3D速度。
 
bool IsActive () const
 
bool IsAlive () const
 
bool IsDormant () const
 
const auto & Serialize () const
 
void SetActorDead ()
 将行为体标记为已死亡并开始其生命周期。
 
void SetCollisions (bool enabled=true)
 启用或禁用该行为体的碰撞。
 
void SetEnableGravity (bool enabled=true)
 启用或禁用该行为体的重力。
 
void SetLocation (const geom::Location &location)
 将行为体传送到 location。
 
void SetSimulatePhysics (bool enabled=true)
 启用或禁用该行为体的物理模拟。
 
void SetTargetAngularVelocity (const geom::Vector3D &vector)
 在应用物理之前设置行为体的角速度。
 
void SetTargetVelocity (const geom::Vector3D &vector)
 在应用物理之前设置行为体的速度。
 
void SetTransform (const geom::Transform &transform)
 将行为体传送并旋转到 transform。
 
virtual ~Actor ()=default
 
- Public 成员函数 继承自 carla::client::detail::ActorState
const std::vector< ActorAttributeValue > & GetAttributes () const
 
const std::string & GetDisplayId () const
 
ActorId GetId () const
 
SharedPtr< ActorGetParent () const
 
ActorId GetParentId () const
 
const std::vector< uint8_t > & GetSemanticTags () const
 
const std::string & GetTypeId () const
 
World GetWorld () const
 

Private 属性

Control _control
 
const bool _is_control_sticky
 

额外继承的成员函数

- Protected 成员函数 继承自 carla::client::detail::ActorState
 ActorState (rpc::Actor description, EpisodeProxy episode)
 
const rpc::ActorGetActorDescription () const
 
const geom::BoundingBoxGetBoundingBox () const
 
EpisodeProxyGetEpisode ()
 
const EpisodeProxyGetEpisode () const
 

详细描述

车辆类的前向声明,用于在LaneInvasionSensor类中可能的引用。

在文件 Vehicle.h76 行定义.

成员类型定义说明

◆ AckermannControl

在文件 Vehicle.h80 行定义.

◆ Control

在文件 Vehicle.h79 行定义.

◆ LightState

在文件 Vehicle.h83 行定义.

◆ PhysicsControl

在文件 Vehicle.h81 行定义.

◆ TelemetryData

在文件 Vehicle.h82 行定义.

◆ TM

在文件 Vehicle.h84 行定义.

◆ VehicleDoor

在文件 Vehicle.h85 行定义.

◆ WheelLocation

在文件 Vehicle.h86 行定义.

构造及析构函数说明

◆ Vehicle()

carla::client::Vehicle::Vehicle ( ActorInitializer init)
explicit

在文件 Vehicle.cpp38 行定义.

成员函数说明

◆ ApplyAckermannControl()

void carla::client::Vehicle::ApplyAckermannControl ( const AckermannControl & control)

应用 控制此车辆.

在文件 Vehicle.cpp74 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ ApplyAckermannControllerSettings()

void carla::client::Vehicle::ApplyAckermannControllerSettings ( const rpc::AckermannControllerSettings & settings)

应用 Ackermann 控制设置给此车辆

在文件 Vehicle.cpp84 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ ApplyControl()

void carla::client::Vehicle::ApplyControl ( const Control & control)

应用 控制此车辆.

在文件 Vehicle.cpp65 行定义.

引用了 _control, _is_control_sticky, carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ ApplyPhysicsControl()

void carla::client::Vehicle::ApplyPhysicsControl ( const PhysicsControl & physics_control)

给此车辆应用物理控制.

在文件 Vehicle.cpp89 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ CloseDoor()

void carla::client::Vehicle::CloseDoor ( const VehicleDoor door_idx)

在车中关门

在文件 Vehicle.cpp99 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ EnableCarSim()

void carla::client::Vehicle::EnableCarSim ( std::string simfile_path)

如果可用,启用CarSim模拟

在文件 Vehicle.cpp155 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ EnableChronoPhysics()

void carla::client::Vehicle::EnableChronoPhysics ( uint64_t MaxSubsteps,
float MaxSubstepDeltaTime,
std::string VehicleJSON = "",
std::string PowertrainJSON = "",
std::string TireJSON = "",
std::string BaseJSONPath = "" )

在文件 Vehicle.cpp166 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ GetAckermannControllerSettings()

rpc::AckermannControllerSettings carla::client::Vehicle::GetAckermannControllerSettings ( ) const

返回最后应用于车辆的 Ackermann controller 设置.

警告
此函数调用模拟器.

在文件 Vehicle.cpp79 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ GetControl()

Vehicle::Control carla::client::Vehicle::GetControl ( ) const

返回最后应用于车辆的控制.

注解
此函数不调用模拟器. 在最后一个节拍返回接收到的数据.

在文件 Vehicle.cpp119 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

被这些函数引用 carla::rss::RssCheck::GetSteeringAngle().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetFailureState()

rpc::VehicleFailureState carla::client::Vehicle::GetFailureState ( ) const

返回车辆的故障状态

在文件 Vehicle.cpp188 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ GetLightState()

Vehicle::LightState carla::client::Vehicle::GetLightState ( ) const

返回当前车辆的打开灯(LightState).

注解
此函数不调用模拟器. 在最后一个节拍返回接收到的数据.

在文件 Vehicle.cpp129 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ GetPhysicsControl()

Vehicle::PhysicsControl carla::client::Vehicle::GetPhysicsControl ( ) const

返回车辆最后应用的物理控制.

警告
此函数调用模拟器.

在文件 Vehicle.cpp124 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ GetSpeedLimit()

float carla::client::Vehicle::GetSpeedLimit ( ) const

返回当前影响该车辆的速度限制.

注解
此函数不调用模拟器. 在最后一个节拍返回接收到的数据.

在文件 Vehicle.cpp134 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ GetTelemetryData()

Vehicle::TelemetryData carla::client::Vehicle::GetTelemetryData ( ) const

返回车辆的遥测数据.

警告
此函数调用模拟器.

在文件 Vehicle.cpp55 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ GetTrafficLight()

SharedPtr< TrafficLight > carla::client::Vehicle::GetTrafficLight ( ) const

检索当前影响该车辆的交通灯.

在文件 Vehicle.cpp149 行定义.

引用了 carla::client::detail::ActorState::GetEpisode(), carla::client::detail::ActorState::GetWorld() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ GetTrafficLightState()

rpc::TrafficLightState carla::client::Vehicle::GetTrafficLightState ( ) const

返回当前影响该车辆的交通灯的状态.

返回
绿灯表示车辆没有受到交通信号灯的影响.
注解
此函数不调用模拟器. 在最后一个节拍返回接收到的数据.

在文件 Vehicle.cpp139 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ GetWheelSteerAngle()

float carla::client::Vehicle::GetWheelSteerAngle ( WheelLocation wheel_location)

从车辆轮子返回一个 旋转

注解
基于轮子的物理,此函数返回它的旋转

在文件 Vehicle.cpp114 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ IsAtTrafficLight()

bool carla::client::Vehicle::IsAtTrafficLight ( )

返回交通灯是否正在影响该车辆.

注解
此函数不调用模拟器. 在最后一个节拍返回接收到的数据.

在文件 Vehicle.cpp144 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ OpenDoor()

void carla::client::Vehicle::OpenDoor ( const VehicleDoor door_idx)

在车中开门

在文件 Vehicle.cpp94 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ RestorePhysXPhysics()

void carla::client::Vehicle::RestorePhysXPhysics ( )

在文件 Vehicle.cpp183 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ SetAutopilot()

void carla::client::Vehicle::SetAutopilot ( bool enabled = true,
uint16_t tm_port = TM_DEFAULT_PORT )

开关车辆的自动驾驶仪.

在文件 Vehicle.cpp43 行定义.

引用了 carla::client::detail::ActorState::GetEpisode(), carla::traffic_manager::TrafficManager::RegisterVehicles() , 以及 carla::traffic_manager::TrafficManager::UnregisterVehicles().

+ 函数调用图:

◆ SetLightState()

void carla::client::Vehicle::SetLightState ( const LightState & light_state)

给车辆设置一个 LightState.

在文件 Vehicle.cpp104 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ SetWheelSteerDirection()

void carla::client::Vehicle::SetWheelSteerDirection ( WheelLocation wheel_location,
float angle_in_deg )

给车辆轮子一个 旋转 (影响汽车的骨骼框架,而不是物理)

在文件 Vehicle.cpp109 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ ShowDebugTelemetry()

void carla::client::Vehicle::ShowDebugTelemetry ( bool enabled = true)

开关车辆的自动驾驶仪.

在文件 Vehicle.cpp60 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

◆ UseCarSimRoad()

void carla::client::Vehicle::UseCarSimRoad ( bool enabled)

允许使用CarSim内部道路定义,而不是虚幻引擎的

在文件 Vehicle.cpp160 行定义.

引用了 carla::client::detail::ActorState::GetEpisode() , 以及 carla::client::detail::EpisodeProxyImpl< PointerT >::Lock().

+ 函数调用图:

类成员变量说明

◆ _control

Control carla::client::Vehicle::_control
private

在文件 Vehicle.h199 行定义.

被这些函数引用 ApplyControl().

◆ _is_control_sticky

const bool carla::client::Vehicle::_is_control_sticky
private

在文件 Vehicle.h197 行定义.

被这些函数引用 ApplyControl().


该类的文档由以下文件生成: