bmh/FlightSimulation/Plugins/CesiumForUnreal_5.4/Source/CesiumRuntime/Public/CesiumTileMapServiceRasterOverlay.h
2025-02-07 22:52:32 +08:00

65 lines
1.8 KiB
C++

// Copyright 2020-2024 CesiumGS, Inc. and Contributors
#pragma once
#include "CesiumRasterOverlay.h"
#include "Components/ActorComponent.h"
#include "CoreMinimal.h"
#include "CesiumTileMapServiceRasterOverlay.generated.h"
/**
* A raster overlay that directly accesses a Tile Map Service (TMS) server. If
* you're using a Tile Map Service via Cesium ion, use the "Cesium ion Raster
* Overlay" component instead.
*/
UCLASS(ClassGroup = Cesium, meta = (BlueprintSpawnableComponent))
class CESIUMRUNTIME_API UCesiumTileMapServiceRasterOverlay
: public UCesiumRasterOverlay {
GENERATED_BODY()
public:
/**
* The base URL of the Tile Map Service (TMS).
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Cesium")
FString Url;
/**
* True to directly specify minum and maximum zoom levels available from the
* server, or false to automatically determine the minimum and maximum zoom
* levels from the server's tilemapresource.xml file.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Cesium")
bool bSpecifyZoomLevels = false;
/**
* Minimum zoom level.
*/
UPROPERTY(
EditAnywhere,
BlueprintReadWrite,
Category = "Cesium",
meta = (EditCondition = "bSpecifyZoomLevels", ClampMin = 0))
int32 MinimumLevel = 0;
/**
* Maximum zoom level.
*/
UPROPERTY(
EditAnywhere,
BlueprintReadWrite,
Category = "Cesium",
meta = (EditCondition = "bSpecifyZoomLevels", ClampMin = 0))
int32 MaximumLevel = 10;
/**
* HTTP headers to be attached to each request made for this raster overlay.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Cesium")
TMap<FString, FString> RequestHeaders;
protected:
virtual std::unique_ptr<CesiumRasterOverlays::RasterOverlay> CreateOverlay(
const CesiumRasterOverlays::RasterOverlayOptions& options = {}) override;
};