Files
BXSSP_Andriod/Plugins/CesiumForUnreal/Source/CesiumRuntime/Private/CesiumSampleHeightMostDetailedAsyncAction.cpp

35 lines
1.3 KiB
C++
Raw Normal View History

2025-10-14 11:14:54 +08:00
// Copyright 2020-2024 CesiumGS, Inc. and Contributors
#include "CesiumSampleHeightMostDetailedAsyncAction.h"
#include "Cesium3DTileset.h"
#include "CesiumRuntime.h"
/*static*/ UCesiumSampleHeightMostDetailedAsyncAction*
UCesiumSampleHeightMostDetailedAsyncAction::SampleHeightMostDetailed(
ACesium3DTileset* Tileset,
const TArray<FVector>& LongitudeLatitudeHeightArray) {
UCesiumSampleHeightMostDetailedAsyncAction* pAsyncAction =
NewObject<UCesiumSampleHeightMostDetailedAsyncAction>();
pAsyncAction->_pTileset = Tileset;
pAsyncAction->_longitudeLatitudeHeightArray = LongitudeLatitudeHeightArray;
return pAsyncAction;
}
void UCesiumSampleHeightMostDetailedAsyncAction::Activate() {
this->RegisterWithGameInstance(this->_pTileset);
this->_pTileset->SampleHeightMostDetailed(
this->_longitudeLatitudeHeightArray,
FCesiumSampleHeightMostDetailedCallback::CreateUObject(
this,
&UCesiumSampleHeightMostDetailedAsyncAction::RaiseOnHeightsSampled));
}
void UCesiumSampleHeightMostDetailedAsyncAction::RaiseOnHeightsSampled(
ACesium3DTileset* Tileset,
const TArray<FCesiumSampleHeightResult>& Result,
const TArray<FString>& Warnings) {
this->OnHeightsSampled.Broadcast(Result, Warnings);
this->SetReadyToDestroy();
}