CARLA
Static Public Member Functions | List of all members
UBoundingBoxCalculator Class Reference

#include <BoundingBoxCalculator.h>

+ Inheritance diagram for UBoundingBoxCalculator:
+ Collaboration diagram for UBoundingBoxCalculator:

Static Public Member Functions

static FBoundingBox CombineBBs (const TArray< FBoundingBox > &BBsToCombine)
 
static void CombineBBsOfActor (const AActor *Actor, TArray< FBoundingBox > &OutBB, TArray< uint8 > &OutTag, const float DistanceThreshold=0.0f, uint8 TagToCombine=0xFF)
 
static FBoundingBox CombineBoxes (const TArray< UBoxComponent *> &BBsToCombine)
 
static FBoundingBox GetActorBoundingBox (const AActor *Actor, uint8 InTagQueried=0xFF)
 Compute the bounding box of the given Carla actor. More...
 
static TArray< FBoundingBoxGetBBsOfActor (const AActor *Actor, uint8 InTagQueried=0xFF)
 
static void GetBBsOfSkeletalMeshComponents (const TArray< USkeletalMeshComponent *> &SkeletalMeshComps, TArray< FBoundingBox > &OutBB, TArray< uint8 > &OutTag, uint8 InTagQueried=0xFF)
 
static void GetBBsOfStaticMeshComponents (const TArray< UStaticMeshComponent *> &StaticMeshComps, TArray< FBoundingBox > &OutBB, TArray< uint8 > &OutTag, uint8 InTagQueried=0xFF)
 
static TArray< FBoundingBoxGetBoundingBoxOfActors (const TArray< AActor *> &Actors, uint8 InTagQueried=0xFF)
 
static FBoundingBox GetCharacterBoundingBox (const ACharacter *Character, uint8 InTagQueried=0xFF)
 
static void GetISMBoundingBox (UInstancedStaticMeshComponent *ISMComp, TArray< FBoundingBox > &OutBoundingBox)
 
static void GetMeshCompsFromActorBoundingBox (const AActor *Actor, const FBoundingBox &InBB, TArray< UStaticMeshComponent *> &OutStaticMeshComps)
 
static FBoundingBox GetSkeletalMeshBoundingBox (const USkeletalMesh *SkeletalMesh)
 
static FBoundingBox GetStaticMeshBoundingBox (const UStaticMesh *StaticMesh)
 
static void GetTrafficLightBoundingBox (const ATrafficLightBase *TrafficLight, TArray< FBoundingBox > &OutBB, TArray< uint8 > &OutTag, uint8 InTagQueried=0xFF)
 
static FBoundingBox GetVehicleBoundingBox (const ACarlaWheeledVehicle *Vehicle, uint8 InTagQueried=0xFF)
 

Detailed Description

Definition at line 18 of file BoundingBoxCalculator.h.

Member Function Documentation

◆ CombineBBs()

FBoundingBox UBoundingBoxCalculator::CombineBBs ( const TArray< FBoundingBox > &  BBsToCombine)
static

Definition at line 599 of file BoundingBoxCalculator.cpp.

References CombineBoundingBoxesGeneric().

Referenced by CombineBBsOfActor(), and GetActorBoundingBox().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CombineBBsOfActor()

void UBoundingBoxCalculator::CombineBBsOfActor ( const AActor Actor,
TArray< FBoundingBox > &  OutBB,
TArray< uint8 > &  OutTag,
const float  DistanceThreshold = 0.0f,
uint8  TagToCombine = 0xFF 
)
static

Definition at line 498 of file BoundingBoxCalculator.cpp.

References CombineBBs(), GetBBsOfStaticMeshComponents(), FBoundingBox::Origin, and FBoundingBox::Rotation.

Referenced by GetTrafficLightBoundingBox().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CombineBoxes()

FBoundingBox UBoundingBoxCalculator::CombineBoxes ( const TArray< UBoxComponent *> &  BBsToCombine)
static

Definition at line 604 of file BoundingBoxCalculator.cpp.

References CombineBoundingBoxesGeneric().

Referenced by GetActorBoundingBox().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetActorBoundingBox()

FBoundingBox UBoundingBoxCalculator::GetActorBoundingBox ( const AActor Actor,
uint8  InTagQueried = 0xFF 
)
static

Compute the bounding box of the given Carla actor.

Warning
If the actor type is not supported a default initialized bounding box is returned.
Traffic signs return its trigger box instead.

Definition at line 41 of file BoundingBoxCalculator.cpp.

References Character, CombineBBs(), CombineBoxes(), GetBBsOfActor(), FBoundingBox::Origin, FBoundingBox::Rotation, TriggerVolume, and Vehicle.

Referenced by FActorRegistry::MakeCarlaActor(), and UCarlaEpisode::SerializeActor().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetBBsOfActor()

TArray< FBoundingBox > UBoundingBoxCalculator::GetBBsOfActor ( const AActor Actor,
uint8  InTagQueried = 0xFF 
)
static

Definition at line 422 of file BoundingBoxCalculator.cpp.

References carla::rpc::Any, BoundingBox, Character, FBoundingBox::Extent, GetBBsOfSkeletalMeshComponents(), GetBBsOfStaticMeshComponents(), GetCharacterBoundingBox(), GetISMBoundingBox(), ATagger::GetTagOfTaggedComponent(), GetTrafficLightBoundingBox(), GetVehicleBoundingBox(), TrafficLight, and Vehicle.

Referenced by GetActorBoundingBox(), and GetBoundingBoxOfActors().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetBBsOfSkeletalMeshComponents()

void UBoundingBoxCalculator::GetBBsOfSkeletalMeshComponents ( const TArray< USkeletalMeshComponent *> &  SkeletalMeshComps,
TArray< FBoundingBox > &  OutBB,
TArray< uint8 > &  OutTag,
uint8  InTagQueried = 0xFF 
)
static

Definition at line 375 of file BoundingBoxCalculator.cpp.

References carla::rpc::Any, ApplyTransformToBB(), BoundingBox, FBoundingBox::Extent, GetSkeletalMeshBoundingBox(), and ATagger::GetTagOfTaggedComponent().

Referenced by GetBBsOfActor(), and UObjectRegister::RegisterSKMComponents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetBBsOfStaticMeshComponents()

void UBoundingBoxCalculator::GetBBsOfStaticMeshComponents ( const TArray< UStaticMeshComponent *> &  StaticMeshComps,
TArray< FBoundingBox > &  OutBB,
TArray< uint8 > &  OutTag,
uint8  InTagQueried = 0xFF 
)
static

Definition at line 337 of file BoundingBoxCalculator.cpp.

References carla::rpc::Any, ApplyTransformToBB(), BoundingBox, GetStaticMeshBoundingBox(), and ATagger::GetTagOfTaggedComponent().

Referenced by CombineBBsOfActor(), GetBBsOfActor(), GetMeshCompsFromActorBoundingBox(), and UObjectRegister::RegisterSMComponents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetBoundingBoxOfActors()

TArray< FBoundingBox > UBoundingBoxCalculator::GetBoundingBoxOfActors ( const TArray< AActor *> &  Actors,
uint8  InTagQueried = 0xFF 
)
static

Definition at line 408 of file BoundingBoxCalculator.cpp.

References GetBBsOfActor().

Referenced by ACarlaGameModeBase::GetAllBBsOfLevel().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetCharacterBoundingBox()

FBoundingBox UBoundingBoxCalculator::GetCharacterBoundingBox ( const ACharacter Character,
uint8  InTagQueried = 0xFF 
)
static

Definition at line 192 of file BoundingBoxCalculator.cpp.

References carla::rpc::Any, ApplyTransformToBB(), BoundingBox, FBoundingBox::Extent, and FBoundingBox::Origin.

Referenced by GetBBsOfActor(), and UObjectRegister::RegisterCharacter().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetISMBoundingBox()

void UBoundingBoxCalculator::GetISMBoundingBox ( UInstancedStaticMeshComponent *  ISMComp,
TArray< FBoundingBox > &  OutBoundingBox 
)
static

Definition at line 304 of file BoundingBoxCalculator.cpp.

References ApplyTransformToBB(), BoundingBox, and GetStaticMeshBoundingBox().

Referenced by GetBBsOfActor(), and UObjectRegister::RegisterISMComponents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetMeshCompsFromActorBoundingBox()

void UBoundingBoxCalculator::GetMeshCompsFromActorBoundingBox ( const AActor Actor,
const FBoundingBox InBB,
TArray< UStaticMeshComponent *> &  OutStaticMeshComps 
)
static

Definition at line 617 of file BoundingBoxCalculator.cpp.

References GetBBsOfStaticMeshComponents(), and FBoundingBox::Origin.

Referenced by UObjectRegister::RegisterTrafficLight().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetSkeletalMeshBoundingBox()

FBoundingBox UBoundingBoxCalculator::GetSkeletalMeshBoundingBox ( const USkeletalMesh *  SkeletalMesh)
static

Definition at line 259 of file BoundingBoxCalculator.cpp.

Referenced by GetBBsOfSkeletalMeshComponents(), and GetVehicleBoundingBox().

+ Here is the caller graph for this function:

◆ GetStaticMeshBoundingBox()

FBoundingBox UBoundingBoxCalculator::GetStaticMeshBoundingBox ( const UStaticMesh *  StaticMesh)
static

Definition at line 291 of file BoundingBoxCalculator.cpp.

Referenced by GetBBsOfStaticMeshComponents(), and GetISMBoundingBox().

+ Here is the caller graph for this function:

◆ GetTrafficLightBoundingBox()

void UBoundingBoxCalculator::GetTrafficLightBoundingBox ( const ATrafficLightBase TrafficLight,
TArray< FBoundingBox > &  OutBB,
TArray< uint8 > &  OutTag,
uint8  InTagQueried = 0xFF 
)
static

Definition at line 223 of file BoundingBoxCalculator.cpp.

References carla::rpc::Any, CombineBBsOfActor(), and carla::rpc::TrafficLight.

Referenced by FCarlaServer::FPimpl::BindActions(), GetBBsOfActor(), and UObjectRegister::RegisterTrafficLight().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetVehicleBoundingBox()

FBoundingBox UBoundingBoxCalculator::GetVehicleBoundingBox ( const ACarlaWheeledVehicle Vehicle,
uint8  InTagQueried = 0xFF 
)
static

Definition at line 114 of file BoundingBoxCalculator.cpp.

References carla::rpc::Any, ApplyTransformToBB(), FBoundingBox::Extent, GetSkeletalMeshBoundingBox(), ATagger::GetTagOfTaggedComponent(), FBoundingBox::Origin, and FBoundingBox::Rotation.

Referenced by ACarlaWheeledVehicle::AdjustVehicleBounds(), GetBBsOfActor(), and UObjectRegister::RegisterVehicle().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

The documentation for this class was generated from the following files: