Cesium for Unreal 2.13.2
Loading...
Searching...
No Matches
CesiumSampleHeightMostDetailedAsyncAction.h
Go to the documentation of this file.
1// Copyright 2020-2024 CesiumGS, Inc. and Contributors
2#pragma once
3
5#include "Kismet/BlueprintAsyncActionBase.h"
6#include "CesiumSampleHeightMostDetailedAsyncAction.generated.h"
7
9
10/**
11 * The delegate used to asynchronously return sampled heights.
12 * @param Result The result of the height sampling. This array contains the
13 * outputs for each input cartographic position. Each result has a HeightSampled
14 * property indicating whether the height was successfully sampled at that
15 * position, and a LongitudeLatitudeHeight property with the complete position,
16 * including the sampled height. If the sample was unsuccessful, the original
17 * position is returned.
18 * @param Warnings Provides information about problems, if any, that were
19 * encountered while sampling heights.
20 */
21DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(
23 const TArray<FCesiumSampleHeightResult>&,
24 Result,
25 const TArray<FString>&,
26 Warnings);
27
28UCLASS()
30 : public UBlueprintAsyncActionBase {
31 GENERATED_BODY()
32
33public:
34 /**
35 * Asynchronously samples the height of the tileset at a list of cartographic
36 * positions, each expressed as a Longitude (X) and Latitude (Y) in degrees.
37 * The Height (Z) provided on input is ignored unless the sampling fails at
38 * that position, in which case it is passed through to the output.
39 * @param Tileset The tileset from which to query heights.
40 * @param LongitudeLatitudeHeightArray The array of cartographic positions at
41 * which to query heights, with Longitude in the X component and Latitude in
42 * the Y component.
43 */
44 UFUNCTION(
45 BlueprintCallable,
46 Category = "Cesium",
47 meta = (BlueprintInternalUseOnly = true))
49 ACesium3DTileset* Tileset,
50 const TArray<FVector>& LongitudeLatitudeHeightArray);
51
52 /**
53 * Called when height has been sampled at all of the given positions. The
54 * Result property contains an element for each input position and in the same
55 * order. The Warnings property provides information about problems that were
56 * encountered while sampling heights.
57 */
58 UPROPERTY(BlueprintAssignable)
60
61 virtual void Activate() override;
62
63private:
64 void RaiseOnHeightsSampled(
65 ACesium3DTileset* Tileset,
66 const TArray<FCesiumSampleHeightResult>& Result,
67 const TArray<FString>& Warnings);
68
69 ACesium3DTileset* _pTileset;
70 TArray<FVector> _longitudeLatitudeHeightArray;
71};
void SampleHeightMostDetailed(const TArray< FVector > &LongitudeLatitudeHeightArray, FCesiumSampleHeightMostDetailedCallback OnHeightsSampled)
Initiates an asynchronous query for the height of this tileset at a list of cartographic positions,...
The delegate used to asynchronously return sampled heights.
The result of sampling the height on a tileset at the given cartographic position.