CARLA
 
载入中...
搜索中...
未找到
所有成员列表
ACarlaWheeledVehicle类 参考

Base class for CARLA wheeled vehicles. 更多...

#include <CarlaWheeledVehicle.h>

+ 类 ACarlaWheeledVehicle 继承关系图:
+ ACarlaWheeledVehicle 的协作图:

Public 成员函数

Constructor and destructor
 ACarlaWheeledVehicle (const FObjectInitializer &ObjectInitializer)
 
 ~ACarlaWheeledVehicle ()
 
Get functions
const FVehicleControlGetVehicleControl () const
 Vehicle control currently applied to this vehicle.
 
const FVehicleAckermannControlGetVehicleAckermannControl () const
 Vehicle Ackermann control currently applied to this vehicle.
 
FTransform GetVehicleTransform () const
 Transform of the vehicle.
 
float GetVehicleForwardSpeed () const
 Forward speed in cm/s. Might be negative if goes backwards.
 
FVector GetVehicleOrientation () const
 Orientation vector of the vehicle, pointing forward.
 
int32 GetVehicleCurrentGear () const
 Active gear of the vehicle.
 
FTransform GetVehicleBoundingBoxTransform () const
 Transform of the vehicle's bounding box relative to the vehicle.
 
FVector GetVehicleBoundingBoxExtent () const
 Extent of the vehicle's bounding box.
 
UBoxComponent * GetVehicleBoundingBox () const
 Get vehicle's bounding box component.
 
float GetMaximumSteerAngle () const
 Get the maximum angle at which the front wheel can steer.
 
AI debug state
void SetAIVehicleState (ECarlaWheeledVehicleState InState)
 
ECarlaWheeledVehicleState GetAIVehicleState () const
 
FVehiclePhysicsControl GetVehiclePhysicsControl () const
 
FAckermannControllerSettings GetAckermannControllerSettings () const
 
void RestoreVehiclePhysicsControl ()
 
FVehicleLightState GetVehicleLightState () const
 
void ApplyVehiclePhysicsControl (const FVehiclePhysicsControl &PhysicsControl)
 
void ApplyAckermannControllerSettings (const FAckermannControllerSettings &AckermannControllerSettings)
 
void SetSimulatePhysics (bool enabled)
 
void SetWheelCollision (UWheeledVehicleMovementComponent4W *Vehicle4W, const FVehiclePhysicsControl &PhysicsControl)
 
void SetWheelCollisionNW (UWheeledVehicleMovementComponentNW *VehicleNW, const FVehiclePhysicsControl &PhysicsControl)
 
void SetVehicleLightState (const FVehicleLightState &LightState)
 
void SetFailureState (const carla::rpc::VehicleFailureState &FailureState)
 
bool IsTwoWheeledVehicle ()
 
virtual bool IsTwoWheeledVehicle_Implementation ()
 
Vehicle input control
void ApplyVehicleControl (const FVehicleControl &Control, EVehicleInputPriority Priority)
 
void ApplyVehicleAckermannControl (const FVehicleAckermannControl &AckermannControl, EVehicleInputPriority Priority)
 
bool IsAckermannControlActive () const
 
void ActivateVelocityControl (const FVector &Velocity)
 
void DeactivateVelocityControl ()
 
FVehicleTelemetryData GetVehicleTelemetryData () const
 
void ShowDebugTelemetry (bool Enabled)
 
void FlushVehicleControl ()
 
DEPRECATED Set functions
void SetThrottleInput (float Value)
 
void SetSteeringInput (float Value)
 
void SetBrakeInput (float Value)
 
void SetReverse (bool Value)
 
void ToggleReverse ()
 
void SetHandbrakeInput (bool Value)
 
void HoldHandbrake ()
 
void ReleaseHandbrake ()
 
TArray< float > GetWheelsFrictionScale ()
 
void SetWheelsFrictionScale (TArray< float > &WheelsFrictionScale)
 
void SetCarlaMovementComponent (UBaseCarlaMovementComponent *MoementComponent)
 
template<typename T = UBaseCarlaMovementComponent>
T * GetCarlaMovementComponent () const
 

Overriden from AActor

TArray< FName > ConstraintComponentNames
 
float DoorOpenStrength = 100.0f
 
ECarlaWheeledVehicleState State = ECarlaWheeledVehicleState::UNKNOWN
 Current state of the vehicle controller (for debugging purposes).
 
UVehicleVelocityControl * VelocityControl
 
struct { 
 
   FVehicleControl   Control 
 
   FVehicleLightState   LightState 
 
   EVehicleInputPriority   Priority = EVehicleInputPriority::INVALID 
 
InputControl 
 
FVehicleControl LastAppliedControl
 
FVehicleAckermannControl LastAppliedAckermannControl
 
FVehiclePhysicsControl LastPhysicsControl
 
bool bAckermannControlActive = false
 
FAckermannController AckermannController
 
float RolloverBehaviorForce = 0.35
 
int RolloverBehaviorTracker = 0
 
float RolloverFlagTime = 5.0f
 
carla::rpc::VehicleFailureState FailureState = carla::rpc::VehicleFailureState::None
 
bool bPhysicsEnabled = true
 
UBaseCarlaMovementComponentBaseMovementComponent = nullptr
 
TArray< UPhysicsConstraintComponent * > ConstraintsComponents
 
TMap< UPhysicsConstraintComponent *, UPrimitiveComponent * > ConstraintDoor
 
TMap< UPrimitiveComponent *, FTransform > DoorComponentsTransform
 
TMap< UPrimitiveComponent *, UPhysicsConstraintComponent * > CollisionDisableConstraints
 
FTimerHandle TimerHandler
 
float DetectionSize { 750.0f }
 
FBox FoliageBoundingBox
 
UBoxComponent * VehicleBounds
 
float CarSimOriginOffset = 150.f
 
bool bIsNWVehicle = false
 
float SpeedAnim { 0.0f }
 
float RotationAnim { 0.0f }
 
FBox GetDetectionBox () const
 
float GetDetectionSize () const
 
void UpdateDetectionBox ()
 
const TArray< int32 > GetFoliageInstancesCloseToVehicle (const UInstancedStaticMeshComponent *Component) const
 
void DrawFoliageBoundingBox () const
 
FBoxSphereBounds GetBoxSphereBounds () const
 
bool IsInVehicleRange (const FVector &Location) const
 
void SetWheelSteerDirection (EVehicleWheelLocation WheelLocation, float AngleInDeg)
 Set the rotation of the car wheels indicated by the user 0 = FL_VehicleWheel, 1 = FR_VehicleWheel, 2 = BL_VehicleWheel, 3 = BR_VehicleWheel NOTE : This is purely aesthetic.
 
float GetWheelSteerAngle (EVehicleWheelLocation WheelLocation)
 
void OpenDoor (const EVehicleDoor DoorIdx)
 
void CloseDoor (const EVehicleDoor DoorIdx)
 
void OpenDoorPhys (const EVehicleDoor DoorIdx)
 
void CloseDoorPhys (const EVehicleDoor DoorIdx)
 
void RecordDoorChange (const EVehicleDoor DoorIdx, const bool bIsOpen)
 
virtual FVector GetVelocity () const override
 
void SetRolloverFlag ()
 
carla::rpc::VehicleFailureState GetFailureState () const
 
float GetSpeedAnim () const
 
void SetSpeedAnim (float Speed)
 
float GetRotationAnim () const
 
void SetRotationAnim (float Rotation)
 
virtual void BeginPlay () override
 
virtual void EndPlay (const EEndPlayReason::Type EndPlayReason)
 
void RefreshLightState (const FVehicleLightState &VehicleLightState)
 
void AdjustVehicleBounds ()
 
void ResetConstraints ()
 
static FRotator GetPhysicsConstraintAngle (UPhysicsConstraintComponent *Component)
 
static void SetPhysicsConstraintAngle (UPhysicsConstraintComponent *Component, const FRotator &NewAngle)
 
void ApplyRolloverBehavior ()
 Rollovers tend to have too much angular velocity, resulting in the vehicle doing a full 360º flip.
 
void CheckRollover (const float roll, const std::pair< float, float > threshold_roll)
 
void AddReferenceToManager ()
 
void RemoveReferenceToManager ()
 

详细描述

Base class for CARLA wheeled vehicles.

在文件 CarlaWheeledVehicle.h73 行定义.

构造及析构函数说明

◆ ACarlaWheeledVehicle()

ACarlaWheeledVehicle::ACarlaWheeledVehicle ( const FObjectInitializer & ObjectInitializer)

在文件 CarlaWheeledVehicle.cpp35 行定义.

引用了 BaseMovementComponent, VehicleBounds , 以及 VelocityControl.

◆ ~ACarlaWheeledVehicle()

ACarlaWheeledVehicle::~ACarlaWheeledVehicle ( )

在文件 CarlaWheeledVehicle.cpp50 行定义.

成员函数说明

◆ ActivateVelocityControl()

void ACarlaWheeledVehicle::ActivateVelocityControl ( const FVector & Velocity)

在文件 CarlaWheeledVehicle.cpp807 行定义.

引用了 VelocityControl.

◆ AddReferenceToManager()

void ACarlaWheeledVehicle::AddReferenceToManager ( )
private

在文件 CarlaWheeledVehicle.cpp1160 行定义.

引用了 AVegetationManager::AddVehicle() , 以及 IsValid().

被这些函数引用 BeginPlay().

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

◆ AdjustVehicleBounds()

void ACarlaWheeledVehicle::AdjustVehicleBounds ( )
protected

在文件 CarlaWheeledVehicle.cpp257 行定义.

引用了 BoundingBox, UBoundingBoxCalculator::GetVehicleBoundingBox() , 以及 VehicleBounds.

+ 函数调用图:

◆ ApplyAckermannControllerSettings()

void ACarlaWheeledVehicle::ApplyAckermannControllerSettings ( const FAckermannControllerSettings & AckermannControllerSettings)
inline

在文件 CarlaWheeledVehicle.h182 行定义.

◆ ApplyRolloverBehavior()

void ACarlaWheeledVehicle::ApplyRolloverBehavior ( )
private

Rollovers tend to have too much angular velocity, resulting in the vehicle doing a full 360º flip.

This function progressively reduces the vehicle's angular velocity so that it ends up upside down instead.

在文件 CarlaWheeledVehicle.cpp1113 行定义.

引用了 CheckRollover(), FailureState, GetVehicleTransform(), carla::rpc::None, RolloverBehaviorTracker, RolloverFlagTime, SetRolloverFlag() , 以及 TimerHandler.

+ 函数调用图:

◆ ApplyVehicleAckermannControl()

void ACarlaWheeledVehicle::ApplyVehicleAckermannControl ( const FVehicleAckermannControl & AckermannControl,
EVehicleInputPriority Priority )
inline

在文件 CarlaWheeledVehicle.h226 行定义.

◆ ApplyVehicleControl()

void ACarlaWheeledVehicle::ApplyVehicleControl ( const FVehicleControl & Control,
EVehicleInputPriority Priority )
inline

在文件 CarlaWheeledVehicle.h211 行定义.

被这些函数引用 SetBrakeInput(), SetHandbrakeInput(), SetReverse(), SetSteeringInput(), SetThrottleInput() , 以及 AWheeledVehicleAIController::Tick().

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

◆ ApplyVehiclePhysicsControl()

void ACarlaWheeledVehicle::ApplyVehiclePhysicsControl ( const FVehiclePhysicsControl & PhysicsControl)

在文件 CarlaWheeledVehicle.cpp588 行定义.

引用了 AckermannController, bIsNWVehicle, FVehicleNWGearData::DownRatio, UCarlaStatics::GetRecorder(), LastPhysicsControl, PhysicsControl, FVehicleNWGearData::Ratio, ResetConstraints(), SetWheelCollision(), SetWheelCollisionNW(), FAckermannController::UpdateVehiclePhysics() , 以及 FVehicleNWGearData::UpRatio.

被这些函数引用 RestoreVehiclePhysicsControl().

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

◆ BeginPlay()

void ACarlaWheeledVehicle::BeginPlay ( )
overrideprotectedvirtual

◆ CheckRollover()

void ACarlaWheeledVehicle::CheckRollover ( const float roll,
const std::pair< float, float > threshold_roll )
private

在文件 CarlaWheeledVehicle.cpp1140 行定义.

引用了 RolloverBehaviorForce , 以及 RolloverBehaviorTracker.

被这些函数引用 ApplyRolloverBehavior().

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

◆ CloseDoor()

void ACarlaWheeledVehicle::CloseDoor ( const EVehicleDoor DoorIdx)

在文件 CarlaWheeledVehicle.cpp1040 行定义.

引用了 All, CloseDoorPhys() , 以及 ConstraintsComponents.

+ 函数调用图:

◆ CloseDoorPhys()

void ACarlaWheeledVehicle::CloseDoorPhys ( const EVehicleDoor DoorIdx)

在文件 CarlaWheeledVehicle.cpp1090 行定义.

引用了 ConstraintDoor, ConstraintsComponents, DoorComponentsTransform , 以及 RecordDoorChange().

被这些函数引用 CloseDoor() , 以及 ResetConstraints().

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

◆ DeactivateVelocityControl()

void ACarlaWheeledVehicle::DeactivateVelocityControl ( )

在文件 CarlaWheeledVehicle.cpp812 行定义.

引用了 VelocityControl.

◆ DrawFoliageBoundingBox()

void ACarlaWheeledVehicle::DrawFoliageBoundingBox ( ) const

在文件 CarlaWheeledVehicle.cpp238 行定义.

引用了 FoliageBoundingBox.

◆ EndPlay()

void ACarlaWheeledVehicle::EndPlay ( const EEndPlayReason::Type EndPlayReason)
protectedvirtual

在文件 CarlaWheeledVehicle.cpp1016 行定义.

引用了 RemoveReferenceToManager() , 以及 ShowDebugTelemetry().

+ 函数调用图:

◆ FlushVehicleControl()

void ACarlaWheeledVehicle::FlushVehicleControl ( )
待办事项
This function should be private to AWheeledVehicleAIController.

在文件 CarlaWheeledVehicle.cpp320 行定义.

引用了 AckermannController, bAckermannControlActive, BaseMovementComponent, InputControl, INVALID, LastAppliedControl, UBaseCarlaMovementComponent::ProcessControl(), FAckermannController::RunLoop() , 以及 FAckermannController::UpdateVehicleState().

被这些函数引用 AWheeledVehicleAIController::Tick().

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

◆ GetAckermannControllerSettings()

FAckermannControllerSettings ACarlaWheeledVehicle::GetAckermannControllerSettings ( ) const
inline

在文件 CarlaWheeledVehicle.h170 行定义.

◆ GetAIVehicleState()

ECarlaWheeledVehicleState ACarlaWheeledVehicle::GetAIVehicleState ( ) const
inline

在文件 CarlaWheeledVehicle.h161 行定义.

引用了 State.

◆ GetBoxSphereBounds()

FBoxSphereBounds ACarlaWheeledVehicle::GetBoxSphereBounds ( ) const

在文件 CarlaWheeledVehicle.cpp246 行定义.

引用了 UCarlaStatics::GetLargeMapManager(), ALargeMapManager::LocalToGlobalTransform() , 以及 VehicleBounds.

+ 函数调用图:

◆ GetCarlaMovementComponent()

template<typename T = UBaseCarlaMovementComponent>
T * ACarlaWheeledVehicle::GetCarlaMovementComponent ( ) const
inline

在文件 CarlaWheeledVehicle.h300 行定义.

◆ GetDetectionBox()

FBox ACarlaWheeledVehicle::GetDetectionBox ( ) const

在文件 CarlaWheeledVehicle.cpp227 行定义.

引用了 FoliageBoundingBox , 以及 GetDetectionBox().

被这些函数引用 GetDetectionBox().

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

◆ GetDetectionSize()

float ACarlaWheeledVehicle::GetDetectionSize ( ) const

在文件 CarlaWheeledVehicle.cpp233 行定义.

引用了 DetectionSize.

被这些函数引用 AVegetationManager::DestroySkeletalFoliages() , 以及 AVegetationManager::SpawnSkeletalFoliages().

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

◆ GetFailureState()

carla::rpc::VehicleFailureState ACarlaWheeledVehicle::GetFailureState ( ) const

在文件 CarlaWheeledVehicle.cpp1156 行定义.

引用了 FailureState.

◆ GetFoliageInstancesCloseToVehicle()

const TArray< int32 > ACarlaWheeledVehicle::GetFoliageInstancesCloseToVehicle ( const UInstancedStaticMeshComponent * Component) const

在文件 CarlaWheeledVehicle.cpp221 行定义.

引用了 FoliageBoundingBox , 以及 GetFoliageInstancesCloseToVehicle().

被这些函数引用 AVegetationManager::GetElementsToSpawn() , 以及 GetFoliageInstancesCloseToVehicle().

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

◆ GetMaximumSteerAngle()

float ACarlaWheeledVehicle::GetMaximumSteerAngle ( ) const

Get the maximum angle at which the front wheel can steer.

在文件 CarlaWheeledVehicle.cpp307 行定义.

被这些函数引用 AWheeledVehicleAIController::OnPossess().

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

◆ GetPhysicsConstraintAngle()

FRotator ACarlaWheeledVehicle::GetPhysicsConstraintAngle ( UPhysicsConstraintComponent * Component)
static

在文件 CarlaWheeledVehicle.cpp1190 行定义.

◆ GetRotationAnim()

float ACarlaWheeledVehicle::GetRotationAnim ( ) const
inline

在文件 CarlaWheeledVehicle.h481 行定义.

◆ GetSpeedAnim()

float ACarlaWheeledVehicle::GetSpeedAnim ( ) const
inline

在文件 CarlaWheeledVehicle.h475 行定义.

◆ GetVehicleAckermannControl()

const FVehicleAckermannControl & ACarlaWheeledVehicle::GetVehicleAckermannControl ( ) const
inline

Vehicle Ackermann control currently applied to this vehicle.

在文件 CarlaWheeledVehicle.h103 行定义.

◆ GetVehicleBoundingBox()

UBoxComponent * ACarlaWheeledVehicle::GetVehicleBoundingBox ( ) const
inline

Get vehicle's bounding box component.

在文件 CarlaWheeledVehicle.h138 行定义.

◆ GetVehicleBoundingBoxExtent()

FVector ACarlaWheeledVehicle::GetVehicleBoundingBoxExtent ( ) const

Extent of the vehicle's bounding box.

在文件 CarlaWheeledVehicle.cpp302 行定义.

引用了 VehicleBounds.

◆ GetVehicleBoundingBoxTransform()

FTransform ACarlaWheeledVehicle::GetVehicleBoundingBoxTransform ( ) const

Transform of the vehicle's bounding box relative to the vehicle.

在文件 CarlaWheeledVehicle.cpp297 行定义.

引用了 VehicleBounds.

◆ GetVehicleControl()

const FVehicleControl & ACarlaWheeledVehicle::GetVehicleControl ( ) const
inline

Vehicle control currently applied to this vehicle.

在文件 CarlaWheeledVehicle.h96 行定义.

被这些函数引用 UDefaultMovementComponent::ProcessControl().

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

◆ GetVehicleCurrentGear()

int32 ACarlaWheeledVehicle::GetVehicleCurrentGear ( ) const

Active gear of the vehicle.

在文件 CarlaWheeledVehicle.cpp292 行定义.

引用了 BaseMovementComponent , 以及 UBaseCarlaMovementComponent::GetVehicleCurrentGear().

被这些函数引用 GetVehicleTelemetryData().

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

◆ GetVehicleForwardSpeed()

float ACarlaWheeledVehicle::GetVehicleForwardSpeed ( ) const

Forward speed in cm/s. Might be negative if goes backwards.

在文件 CarlaWheeledVehicle.cpp282 行定义.

引用了 BaseMovementComponent , 以及 UBaseCarlaMovementComponent::GetVehicleForwardSpeed().

被这些函数引用 CaService::AddBasicVehicleContainerHighFrequency(), CaService::CheckSpeedDelta(), CaService::ComputeSpeed() , 以及 GetVehicleTelemetryData().

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

◆ GetVehicleLightState()

FVehicleLightState ACarlaWheeledVehicle::GetVehicleLightState ( ) const

在文件 CarlaWheeledVehicle.cpp578 行定义.

引用了 InputControl.

被这些函数引用 CaService::AddLowFrequencyContainer().

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

◆ GetVehicleOrientation()

FVector ACarlaWheeledVehicle::GetVehicleOrientation ( ) const

Orientation vector of the vehicle, pointing forward.

在文件 CarlaWheeledVehicle.cpp287 行定义.

引用了 GetVehicleTransform().

被这些函数引用 CaService::CheckHeadingDelta().

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

◆ GetVehiclePhysicsControl()

FVehiclePhysicsControl ACarlaWheeledVehicle::GetVehiclePhysicsControl ( ) const

◆ GetVehicleTelemetryData()

FVehicleTelemetryData ACarlaWheeledVehicle::GetVehicleTelemetryData ( ) const

◆ GetVehicleTransform()

FTransform ACarlaWheeledVehicle::GetVehicleTransform ( ) const
inline

Transform of the vehicle.

Location is shifted so it matches center of the vehicle bounds rather than the actor's location.

在文件 CarlaWheeledVehicle.h111 行定义.

被这些函数引用 ApplyRolloverBehavior() , 以及 GetVehicleOrientation().

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

◆ GetVelocity()

FVector ACarlaWheeledVehicle::GetVelocity ( ) const
overridevirtual

在文件 CarlaWheeledVehicle.cpp1011 行定义.

引用了 BaseMovementComponent , 以及 UBaseCarlaMovementComponent::GetVelocity().

+ 函数调用图:

◆ GetWheelsFrictionScale()

TArray< float > ACarlaWheeledVehicle::GetWheelsFrictionScale ( )

在文件 CarlaWheeledVehicle.cpp368 行定义.

◆ GetWheelSteerAngle()

float ACarlaWheeledVehicle::GetWheelSteerAngle ( EVehicleWheelLocation WheelLocation)

在文件 CarlaWheeledVehicle.cpp940 行定义.

引用了 bPhysicsEnabled.

被这些函数引用 FFrameData::AddVehicleWheelsAnimation() , 以及 ACarlaRecorder::AddVehicleWheelsAnimation().

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

◆ HoldHandbrake()

void ACarlaWheeledVehicle::HoldHandbrake ( )
inline

在文件 CarlaWheeledVehicle.h282 行定义.

◆ IsAckermannControlActive()

bool ACarlaWheeledVehicle::IsAckermannControlActive ( ) const
inline

在文件 CarlaWheeledVehicle.h233 行定义.

◆ IsInVehicleRange()

bool ACarlaWheeledVehicle::IsInVehicleRange ( const FVector & Location) const

在文件 CarlaWheeledVehicle.cpp205 行定义.

引用了 FoliageBoundingBox , 以及 IsInVehicleRange().

被这些函数引用 IsInVehicleRange().

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

◆ IsTwoWheeledVehicle()

bool ACarlaWheeledVehicle::IsTwoWheeledVehicle ( )

被这些函数引用 FFrameData::AddVehicleWheelsAnimation(), ACarlaRecorder::AddVehicleWheelsAnimation() , 以及 SetWheelCollision().

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

◆ IsTwoWheeledVehicle_Implementation()

virtual bool ACarlaWheeledVehicle::IsTwoWheeledVehicle_Implementation ( )
inlinevirtual

在文件 CarlaWheeledVehicle.h199 行定义.

◆ OpenDoor()

void ACarlaWheeledVehicle::OpenDoor ( const EVehicleDoor DoorIdx)

在文件 CarlaWheeledVehicle.cpp1023 行定义.

引用了 All, ConstraintsComponents , 以及 OpenDoorPhys().

+ 函数调用图:

◆ OpenDoorPhys()

void ACarlaWheeledVehicle::OpenDoorPhys ( const EVehicleDoor DoorIdx)

在文件 CarlaWheeledVehicle.cpp1057 行定义.

引用了 CollisionDisableConstraints, ConstraintDoor, ConstraintsComponents, DoorComponentsTransform, DoorOpenStrength , 以及 RecordDoorChange().

被这些函数引用 OpenDoor() , 以及 ResetConstraints().

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

◆ RecordDoorChange()

void ACarlaWheeledVehicle::RecordDoorChange ( const EVehicleDoor DoorIdx,
const bool bIsOpen )

在文件 CarlaWheeledVehicle.cpp1104 行定义.

引用了 UCarlaStatics::GetRecorder().

被这些函数引用 CloseDoorPhys() , 以及 OpenDoorPhys().

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

◆ RefreshLightState()

void ACarlaWheeledVehicle::RefreshLightState ( const FVehicleLightState & VehicleLightState)
protected

被这些函数引用 SetVehicleLightState().

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

◆ ReleaseHandbrake()

void ACarlaWheeledVehicle::ReleaseHandbrake ( )
inline

在文件 CarlaWheeledVehicle.h288 行定义.

◆ RemoveReferenceToManager()

void ACarlaWheeledVehicle::RemoveReferenceToManager ( )
private

在文件 CarlaWheeledVehicle.cpp1175 行定义.

引用了 IsValid() , 以及 AVegetationManager::RemoveVehicle().

被这些函数引用 EndPlay().

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

◆ ResetConstraints()

void ACarlaWheeledVehicle::ResetConstraints ( )
protected

在文件 CarlaWheeledVehicle.cpp999 行定义.

引用了 CloseDoorPhys(), ConstraintsComponents , 以及 OpenDoorPhys().

被这些函数引用 ApplyVehiclePhysicsControl(), BeginPlay() , 以及 SetSimulatePhysics().

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

◆ RestoreVehiclePhysicsControl()

void ACarlaWheeledVehicle::RestoreVehiclePhysicsControl ( )

在文件 CarlaWheeledVehicle.cpp583 行定义.

引用了 ApplyVehiclePhysicsControl() , 以及 LastPhysicsControl.

被这些函数引用 UCarSimManagerComponent::DisableCarSimPhysics() , 以及 UBaseCarlaMovementComponent::EnableUE4VehiclePhysics().

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

◆ SetAIVehicleState()

void ACarlaWheeledVehicle::SetAIVehicleState ( ECarlaWheeledVehicleState InState)
inline
待办事项
This function should be private to AWheeledVehicleAIController.

在文件 CarlaWheeledVehicle.h155 行定义.

引用了 State.

被这些函数引用 AWheeledVehicleAIController::ConfigureAutopilot().

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

◆ SetBrakeInput()

void ACarlaWheeledVehicle::SetBrakeInput ( float Value)

在文件 CarlaWheeledVehicle.cpp347 行定义.

引用了 ApplyVehicleControl(), FVehicleControl::Brake, Control , 以及 InputControl.

被这些函数引用 AWheeledVehicleAIController::ConfigureAutopilot().

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

◆ SetCarlaMovementComponent()

void ACarlaWheeledVehicle::SetCarlaMovementComponent ( UBaseCarlaMovementComponent * MoementComponent)

在文件 CarlaWheeledVehicle.cpp916 行定义.

引用了 BaseMovementComponent.

◆ SetFailureState()

void ACarlaWheeledVehicle::SetFailureState ( const carla::rpc::VehicleFailureState & FailureState)

在文件 CarlaWheeledVehicle.cpp911 行定义.

引用了 FailureState.

◆ SetHandbrakeInput()

void ACarlaWheeledVehicle::SetHandbrakeInput ( bool Value)

在文件 CarlaWheeledVehicle.cpp361 行定义.

引用了 ApplyVehicleControl(), FVehicleControl::bHandBrake, Control , 以及 InputControl.

被这些函数引用 AWheeledVehicleAIController::ConfigureAutopilot().

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

◆ SetPhysicsConstraintAngle()

void ACarlaWheeledVehicle::SetPhysicsConstraintAngle ( UPhysicsConstraintComponent * Component,
const FRotator & NewAngle )
static

在文件 CarlaWheeledVehicle.cpp1196 行定义.

◆ SetReverse()

void ACarlaWheeledVehicle::SetReverse ( bool Value)

在文件 CarlaWheeledVehicle.cpp354 行定义.

引用了 ApplyVehicleControl(), FVehicleControl::bReverse, Control , 以及 InputControl.

被这些函数引用 AWheeledVehicleAIController::ConfigureAutopilot().

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

◆ SetRolloverFlag()

void ACarlaWheeledVehicle::SetRolloverFlag ( )

在文件 CarlaWheeledVehicle.cpp1149 行定义.

引用了 FailureState, carla::rpc::Rollover , 以及 RolloverBehaviorTracker.

被这些函数引用 ApplyRolloverBehavior().

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

◆ SetRotationAnim()

void ACarlaWheeledVehicle::SetRotationAnim ( float Rotation)
inline

在文件 CarlaWheeledVehicle.h484 行定义.

被这些函数引用 FFrameData::ProcessReplayerAnimBiker() , 以及 CarlaReplayerHelper::ProcessReplayerAnimBiker().

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

◆ SetSimulatePhysics()

void ACarlaWheeledVehicle::SetSimulatePhysics ( bool enabled)

在文件 CarlaWheeledVehicle.cpp957 行定义.

引用了 bPhysicsEnabled , 以及 ResetConstraints().

+ 函数调用图:

◆ SetSpeedAnim()

void ACarlaWheeledVehicle::SetSpeedAnim ( float Speed)
inline

在文件 CarlaWheeledVehicle.h478 行定义.

被这些函数引用 FFrameData::ProcessReplayerAnimBiker() , 以及 CarlaReplayerHelper::ProcessReplayerAnimBiker().

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

◆ SetSteeringInput()

void ACarlaWheeledVehicle::SetSteeringInput ( float Value)

在文件 CarlaWheeledVehicle.cpp340 行定义.

引用了 ApplyVehicleControl(), Control, InputControl , 以及 FVehicleControl::Steer.

被这些函数引用 AWheeledVehicleAIController::ConfigureAutopilot().

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

◆ SetThrottleInput()

void ACarlaWheeledVehicle::SetThrottleInput ( float Value)

在文件 CarlaWheeledVehicle.cpp333 行定义.

引用了 ApplyVehicleControl(), Control, InputControl , 以及 FVehicleControl::Throttle.

被这些函数引用 AWheeledVehicleAIController::ConfigureAutopilot() , 以及 UDefaultMovementComponent::ProcessControl().

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

◆ SetVehicleLightState()

void ACarlaWheeledVehicle::SetVehicleLightState ( const FVehicleLightState & LightState)

◆ SetWheelCollision()

void ACarlaWheeledVehicle::SetWheelCollision ( UWheeledVehicleMovementComponent4W * Vehicle4W,
const FVehiclePhysicsControl & PhysicsControl )

在文件 CarlaWheeledVehicle.cpp52 行定义.

引用了 IsTwoWheeledVehicle() , 以及 PhysicsControl.

被这些函数引用 ApplyVehiclePhysicsControl().

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

◆ SetWheelCollisionNW()

void ACarlaWheeledVehicle::SetWheelCollisionNW ( UWheeledVehicleMovementComponentNW * VehicleNW,
const FVehiclePhysicsControl & PhysicsControl )

在文件 CarlaWheeledVehicle.cpp78 行定义.

引用了 PhysicsControl.

被这些函数引用 ApplyVehiclePhysicsControl().

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

◆ SetWheelsFrictionScale()

void ACarlaWheeledVehicle::SetWheelsFrictionScale ( TArray< float > & WheelsFrictionScale)

在文件 CarlaWheeledVehicle.cpp385 行定义.

被这些函数引用 BeginPlay().

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

◆ SetWheelSteerDirection()

void ACarlaWheeledVehicle::SetWheelSteerDirection ( EVehicleWheelLocation WheelLocation,
float AngleInDeg )

Set the rotation of the car wheels indicated by the user 0 = FL_VehicleWheel, 1 = FR_VehicleWheel, 2 = BL_VehicleWheel, 3 = BR_VehicleWheel NOTE : This is purely aesthetic.

It will not modify the physics of the car in any way

在文件 CarlaWheeledVehicle.cpp925 行定义.

引用了 bPhysicsEnabled.

◆ ShowDebugTelemetry()

void ACarlaWheeledVehicle::ShowDebugTelemetry ( bool Enabled)

在文件 CarlaWheeledVehicle.cpp867 行定义.

引用了 ACarlaHUD::AddDebugVehicleForTelemetry() , 以及 ACarlaHUD::DebugVehicle.

被这些函数引用 EndPlay().

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

◆ ToggleReverse()

void ACarlaWheeledVehicle::ToggleReverse ( )
inline

在文件 CarlaWheeledVehicle.h273 行定义.

◆ UpdateDetectionBox()

void ACarlaWheeledVehicle::UpdateDetectionBox ( )

在文件 CarlaWheeledVehicle.cpp212 行定义.

引用了 DetectionSize , 以及 FoliageBoundingBox.

被这些函数引用 AVegetationManager::Tick().

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

类成员变量说明

◆ AckermannController

FAckermannController ACarlaWheeledVehicle::AckermannController
private

在文件 CarlaWheeledVehicle.h353 行定义.

被这些函数引用 ApplyVehiclePhysicsControl(), BeginPlay() , 以及 FlushVehicleControl().

◆ bAckermannControlActive

bool ACarlaWheeledVehicle::bAckermannControlActive = false
private

在文件 CarlaWheeledVehicle.h352 行定义.

被这些函数引用 FlushVehicleControl().

◆ BaseMovementComponent

UBaseCarlaMovementComponent* ACarlaWheeledVehicle::BaseMovementComponent = nullptr
private

◆ bIsNWVehicle

bool ACarlaWheeledVehicle::bIsNWVehicle = false

◆ bPhysicsEnabled

bool ACarlaWheeledVehicle::bPhysicsEnabled = true
private

◆ CarSimOriginOffset

float ACarlaWheeledVehicle::CarSimOriginOffset = 150.f

在文件 CarlaWheeledVehicle.h420 行定义.

被这些函数引用 UCarSimManagerComponent::BeginPlay().

◆ CollisionDisableConstraints

TMap<UPrimitiveComponent*, UPhysicsConstraintComponent*> ACarlaWheeledVehicle::CollisionDisableConstraints
private

在文件 CarlaWheeledVehicle.h456 行定义.

被这些函数引用 BeginPlay() , 以及 OpenDoorPhys().

◆ ConstraintComponentNames

TArray<FName> ACarlaWheeledVehicle::ConstraintComponentNames
protected

在文件 CarlaWheeledVehicle.h323 行定义.

被这些函数引用 BeginPlay().

◆ ConstraintDoor

TMap<UPhysicsConstraintComponent*, UPrimitiveComponent*> ACarlaWheeledVehicle::ConstraintDoor
private

在文件 CarlaWheeledVehicle.h449 行定义.

被这些函数引用 BeginPlay(), CloseDoorPhys() , 以及 OpenDoorPhys().

◆ ConstraintsComponents

TArray<UPhysicsConstraintComponent*> ACarlaWheeledVehicle::ConstraintsComponents
private

在文件 CarlaWheeledVehicle.h446 行定义.

被这些函数引用 BeginPlay(), CloseDoor(), CloseDoorPhys(), OpenDoor(), OpenDoorPhys() , 以及 ResetConstraints().

◆ Control

FVehicleControl ACarlaWheeledVehicle::Control

◆ DetectionSize

float ACarlaWheeledVehicle::DetectionSize { 750.0f }

在文件 CarlaWheeledVehicle.h363 行定义.

被这些函数引用 GetDetectionSize() , 以及 UpdateDetectionBox().

◆ DoorComponentsTransform

TMap<UPrimitiveComponent*, FTransform> ACarlaWheeledVehicle::DoorComponentsTransform
private

在文件 CarlaWheeledVehicle.h453 行定义.

被这些函数引用 BeginPlay(), CloseDoorPhys() , 以及 OpenDoorPhys().

◆ DoorOpenStrength

float ACarlaWheeledVehicle::DoorOpenStrength = 100.0f
protected

在文件 CarlaWheeledVehicle.h326 行定义.

被这些函数引用 OpenDoorPhys().

◆ FailureState

carla::rpc::VehicleFailureState ACarlaWheeledVehicle::FailureState = carla::rpc::VehicleFailureState::None
private

在文件 CarlaWheeledVehicle.h359 行定义.

被这些函数引用 ApplyRolloverBehavior(), GetFailureState(), SetFailureState() , 以及 SetRolloverFlag().

◆ FoliageBoundingBox

FBox ACarlaWheeledVehicle::FoliageBoundingBox

◆ [struct]

struct { ... } ACarlaWheeledVehicle::InputControl

◆ LastAppliedAckermannControl

FVehicleAckermannControl ACarlaWheeledVehicle::LastAppliedAckermannControl
private

在文件 CarlaWheeledVehicle.h349 行定义.

◆ LastAppliedControl

FVehicleControl ACarlaWheeledVehicle::LastAppliedControl
private

在文件 CarlaWheeledVehicle.h348 行定义.

被这些函数引用 FlushVehicleControl() , 以及 GetVehicleTelemetryData().

◆ LastPhysicsControl

FVehiclePhysicsControl ACarlaWheeledVehicle::LastPhysicsControl
private

◆ LightState

FVehicleLightState ACarlaWheeledVehicle::LightState

在文件 CarlaWheeledVehicle.h344 行定义.

被这些函数引用 SetVehicleLightState().

◆ Priority

EVehicleInputPriority ACarlaWheeledVehicle::Priority = EVehicleInputPriority::INVALID

在文件 CarlaWheeledVehicle.h342 行定义.

◆ RolloverBehaviorForce

float ACarlaWheeledVehicle::RolloverBehaviorForce = 0.35
private

在文件 CarlaWheeledVehicle.h355 行定义.

被这些函数引用 CheckRollover().

◆ RolloverBehaviorTracker

int ACarlaWheeledVehicle::RolloverBehaviorTracker = 0
private

在文件 CarlaWheeledVehicle.h356 行定义.

被这些函数引用 ApplyRolloverBehavior(), CheckRollover() , 以及 SetRolloverFlag().

◆ RolloverFlagTime

float ACarlaWheeledVehicle::RolloverFlagTime = 5.0f
private

在文件 CarlaWheeledVehicle.h357 行定义.

被这些函数引用 ApplyRolloverBehavior().

◆ RotationAnim

float ACarlaWheeledVehicle::RotationAnim { 0.0f }

在文件 CarlaWheeledVehicle.h472 行定义.

◆ SpeedAnim

float ACarlaWheeledVehicle::SpeedAnim { 0.0f }

在文件 CarlaWheeledVehicle.h471 行定义.

◆ State

ECarlaWheeledVehicleState ACarlaWheeledVehicle::State = ECarlaWheeledVehicleState::UNKNOWN
private

Current state of the vehicle controller (for debugging purposes).

在文件 CarlaWheeledVehicle.h335 行定义.

◆ TimerHandler

FTimerHandle ACarlaWheeledVehicle::TimerHandler
private

在文件 CarlaWheeledVehicle.h469 行定义.

被这些函数引用 ApplyRolloverBehavior().

◆ VehicleBounds

UBoxComponent* ACarlaWheeledVehicle::VehicleBounds

◆ VelocityControl

UVehicleVelocityControl* ACarlaWheeledVehicle::VelocityControl
private

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