Agrarsense
|
#include <ThermalCamera.h>
Public Member Functions | |
AThermalCamera (const FObjectInitializer &ObjectInitializer) | |
void | ChangeThermalCameraParameters (FThermalCameraParameters Parameters) |
FThermalCameraParameters | GetThermalCameraParameters () const |
virtual ESensorTypes | GetSensorType () const override |
virtual FString | GetParametersAsString () const override |
Public Member Functions inherited from ACamera | |
ACamera (const FObjectInitializer &ObjectInitializer) | |
virtual void | Init (FCameraBaseParameters parameters, bool SimulateSensor=true) |
virtual ESensorTypes | GetSensorType () const override |
void | ChangeCameraParameters (FCameraBaseParameters newParameters) |
FCameraBaseParameters | GetCameraParameters () |
void | AddPostProcessingMaterial (const FString &Path, float Weight=1.0f) |
void | RemovePostProcessingMaterial (UMaterial *Material) |
USceneCaptureComponent2D * | GetCaptureComponent2D () const |
UTextureRenderTarget2D * | GetCaptureRenderTarget2D () const |
void | AddWidgetToWindow (UWidget *WidgetToAdd) |
void | RemoveWidgetFromWindow (UWidget *WidgetToRemove) |
void | SetShadowRendering (bool RenderShadows) |
void | SetTemporalAA (bool SetTemporal) |
void | ResizeCamera (int Width=1280, int Height=720) |
void | SaveCurrentFrameToDisk () |
int | GetCameraWidth () const |
int | GetCameraHeight () const |
virtual FString | GetParametersAsString () const override |
Public Member Functions inherited from ASensor | |
ASensor (const FObjectInitializer &ObjectInitializer) | |
FString | ExportToJsonFile (const FString &FileName) |
virtual ESensorTypes | GetSensorType () const |
FString | GetSensorIdentifier () const |
void | SetSensorIdentifier (const FString newIdentifier) |
FString | GetSensorName () const |
virtual FString | GetParametersAsString () const |
void | SetSensorName (const FString newName) |
virtual FString | GetTopicName () |
UTopic * | GetROSTopic () const |
void | SetSimulateSensor (bool SimulateSensor) |
bool | CanSimulateSensor () const |
ASensorModel * | GetSensorModel () const |
void | SetSensorModel (ASensorModel *NewSensorModel) |
bool | IsROSConnected () const |
UROSIntegrationGameInstance * | GetROSGameInstance () const |
virtual FString | GetActorID_Implementation () const override |
virtual FString | GetActorName_Implementation () const override |
virtual FString | GetActorInformation_Implementation () const override |
virtual void | SetActorName_Implementation (const FString &NewActorName) override |
virtual void | SetActorIDAndName_Implementation (const FString &NewActorName, const FString &NewID) override |
Public Member Functions inherited from IActorInformation | |
FString | GetActorID () const |
FString | GetActorName () const |
FString | GetActorInformation () const |
void | SetActorName (const FString &NewActorName) |
void | SetActorIDAndName (const FString &NewActorName, const FString &NewID) |
Private Member Functions | |
virtual void | EndPlay (const EEndPlayReason::Type EndPlayReason) override |
void | ThermalInit (FThermalCameraParameters Parameters, bool SimulateSensor=true) |
void | Init (FCameraBaseParameters parameters, bool SimulateSensor=true) override |
void | SetupMaterial () |
void | UpdateThermalMaterial () |
Private Attributes | |
FThermalCameraParameters | ThermalCameraParameters |
TWeakObjectPtr< UMaterialInstanceDynamic > | ThermalMaterial |
Static Private Attributes | |
static const FName | WidthNoise = "WidthNoise" |
static const FName | HeightNoise = "HeightNoise" |
static const FName | WarmColor = "WarmColor" |
static const FName | WarmColor2 = "WarmColor2" |
static const FName | ColdColor = "ColdColor" |
static const FName | ColdColor2 = "ColdColor2" |
Friends | |
class | USensorFactory |
Additional Inherited Members | |
Static Public Member Functions inherited from ASensor | |
static void | HideComponentForAllCameras (UPrimitiveComponent *PrimitiveComponent) |
static TMap< FString, FColor > | GetSemanticColors () |
static TArray< TWeakObjectPtr< UPrimitiveComponent > > | GetComponentsToHide () |
Static Public Member Functions inherited from IActorInformation | |
static void | SetAndValidateActorIDAndName (FString &ActorName, FString &ActorID, TWeakObjectPtr< AActor > Actor) |
static bool | DestroyActorByID (const FString &ID) |
static AActor * | GetActorByID (const FString &ID) |
template<typename T > | |
static TArray< T * > | GetActorsWithInterface () |
static void | PrintAllIds () |
Public Attributes inherited from ACamera | |
TEnumAsByte< ETextureRenderTargetFormat > | TextureFormat = ETextureRenderTargetFormat::RTF_RGBA8 |
FCameraDelegate_OnWindowClosed | OnCameraWindowClosed |
FCameraDelegate_OnWindowResized | OnCameraWindowResized |
Public Attributes inherited from ASensor | |
FSensorDestroy | OnSensorDestroy |
FString | AttachedToComponent |
FName | AttachedToBone |
Protected Member Functions inherited from ACamera | |
virtual void | BeginPlay () override |
virtual void | EndPlay (const EEndPlayReason::Type EndPlayReason) override |
virtual void | PreActorTick (UWorld *World, ELevelTick TickType, float DeltaSeconds) |
virtual void | EndOfFrame (UWorld *World, ELevelTick TickType, float DeltaSeconds) |
virtual void | EndOfFrameParellel (float DeltaTime) |
virtual void | AddProcessingToFrameBuffer (TArray< FColor > &buffer) |
virtual void | SendImageDataToROS (const TArray< FColor > &FrameBuffer, int32 Width, int32 Height) |
void | HidePrimitiveComponent (UPrimitiveComponent *PrimitiveComponent) |
void | SaveImageToDisk (const TArray< FColor > FrameBuffer, int32 Width, int32 Height) |
void | SaveCameraMetaDataToDisk (const FString &ImageName) |
void | CreateLogFile () override |
Protected Member Functions inherited from ASensor | |
virtual void | BeginPlay () override |
virtual void | EndPlay (const EEndPlayReason::Type EndPlayReason) override |
virtual void | CreateROSTopic () |
virtual void | DestroyROSTopic () |
virtual void | CreateDataSavePath () |
bool | IsLogFileCreated () |
virtual void | CreateLogFile () |
void | WriteToLogFile (const FString &Message) |
Static Protected Member Functions inherited from ASensor | |
template<typename InStructType > | |
static FString | StructToString (const InStructType &InStruct) |
Protected Attributes inherited from ACamera | |
bool | UseParallelLateTick = true |
FDelegateHandle | OnPreTickDelegate |
FDelegateHandle | OnPostTickDelegate |
FString | CameraName = "Camera " |
FString | FilePrefix = "Data/Camera_" |
UTextureRenderTarget2D * | CaptureRenderTarget = nullptr |
USceneCaptureComponent2D * | CaptureComponent2D = nullptr |
UTexture2D * | CaptureFrameTexture |
TSharedPtr< FUnrealWindow > | UnrealWindow |
FTickEntry | TickEntry |
TWeakObjectPtr< UMaterialInstanceDynamic > | IceMaterialInstance |
TWeakObjectPtr< UMaterial > | PhysicLensDistortion |
Protected Attributes inherited from ASensor | |
UTopic * | ROSTopic = nullptr |
bool | SendDataToROS = true |
ULogFile * | LogFile = nullptr |
FString | FileSavePath |
UROSIntegrationGameInstance * | ROSInstance = nullptr |
Static Protected Attributes inherited from ASensor | |
static FPrimitiveAdded | OnPrimitiveAdded |
static const FName | NiagaraPointsInt = "User.PointCount" |
static const FName | NiagaraHitPoints = "User.HitPoints" |
static const FName | NiagaraHitColors = "User.HitColors" |
static const FName | NiagaraPointsFloat = "User.Test" |
Class for Thermal camera. This camera uses post processing material to color all certain objects (such as animals) with warm colors and everything else with cold colors.
Definition at line 21 of file ThermalCamera.h.
AThermalCamera::AThermalCamera | ( | const FObjectInitializer & | ObjectInitializer | ) |
Definition at line 11 of file ThermalCamera.cpp.
void AThermalCamera::ChangeThermalCameraParameters | ( | FThermalCameraParameters | Parameters | ) |
Definition at line 43 of file ThermalCamera.cpp.
References FThermalCameraParameters::CameraParameters, ACamera::ChangeCameraParameters(), ThermalCameraParameters, and UpdateThermalMaterial().
|
overrideprivatevirtual |
Called when the camera's play ends.
EndPlayReason | - The reason for the end of play. |
Reimplemented from ACamera.
Definition at line 36 of file ThermalCamera.cpp.
References ThermalMaterial.
|
inlineoverridevirtual |
Get this sensor parameters struct fields as one string.
Reimplemented from ACamera.
Definition at line 50 of file ThermalCamera.h.
|
inlineoverridevirtual |
Get type of the sensor
Reimplemented from ACamera.
Definition at line 42 of file ThermalCamera.h.
References ThermalCamera.
|
inline |
Definition at line 33 of file ThermalCamera.h.
Referenced by USimulatorJsonExporter::ExportSensorToJSON().
|
overrideprivatevirtual |
Initialize new Camera sensor
FCameraBaseParameters | CameraParameters struct |
Reimplemented from ACamera.
Definition at line 22 of file ThermalCamera.cpp.
References ACamera::CameraName, ACamera::FilePrefix, ACamera::SetShadowRendering(), and SetupMaterial().
Referenced by ThermalInit().
|
private |
Definition at line 55 of file ThermalCamera.cpp.
References ACamera::GetCaptureComponent2D(), ThermalMaterial, and UpdateThermalMaterial().
Referenced by Init().
|
private |
Definition at line 16 of file ThermalCamera.cpp.
References FThermalCameraParameters::CameraParameters, Init(), and ThermalCameraParameters.
Referenced by USensorFactory::SpawnThermalCamera().
|
private |
Definition at line 78 of file ThermalCamera.cpp.
References FThermalCameraParameters::AllowCustomNoiseResolution, FThermalCameraParameters::CameraParameters, ColdColor, FThermalCameraParameters::ColdColor, ColdColor2, FThermalCameraParameters::ColdColor2, FCameraBaseParameters::Height, HeightNoise, FThermalCameraParameters::HeightResolutionNoise, ThermalCameraParameters, ThermalMaterial, WarmColor, FThermalCameraParameters::WarmColor, WarmColor2, FThermalCameraParameters::WarmColor2, FCameraBaseParameters::Width, WidthNoise, and FThermalCameraParameters::WidthResolutionNoise.
Referenced by ChangeThermalCameraParameters(), and SetupMaterial().
|
friend |
Definition at line 57 of file ThermalCamera.h.
|
inlinestaticprivate |
Definition at line 82 of file ThermalCamera.h.
Referenced by UpdateThermalMaterial().
|
inlinestaticprivate |
Definition at line 83 of file ThermalCamera.h.
Referenced by UpdateThermalMaterial().
|
inlinestaticprivate |
Definition at line 78 of file ThermalCamera.h.
Referenced by UpdateThermalMaterial().
|
private |
Definition at line 73 of file ThermalCamera.h.
Referenced by ChangeThermalCameraParameters(), ThermalInit(), and UpdateThermalMaterial().
|
private |
Definition at line 75 of file ThermalCamera.h.
Referenced by EndPlay(), SetupMaterial(), and UpdateThermalMaterial().
|
inlinestaticprivate |
Definition at line 80 of file ThermalCamera.h.
Referenced by UpdateThermalMaterial().
|
inlinestaticprivate |
Definition at line 81 of file ThermalCamera.h.
Referenced by UpdateThermalMaterial().
|
inlinestaticprivate |
Definition at line 77 of file ThermalCamera.h.
Referenced by UpdateThermalMaterial().