Cesium for Unreal 2.15.0
Loading...
Searching...
No Matches
CesiumPointCloudShading.h
Go to the documentation of this file.
1// Copyright 2020-2024 CesiumGS, Inc. and Contributors
2
3#pragma once
4
5#include "CoreMinimal.h"
6
7#include "CesiumPointCloudShading.generated.h"
8
9/**
10 * Options for adjusting how point clouds are rendered using 3D Tiles.
11 */
12USTRUCT(BlueprintType)
13struct CESIUMRUNTIME_API FCesiumPointCloudShading {
14 GENERATED_USTRUCT_BODY()
15
16 /**
17 * Whether or not to perform point attenuation. Attenuation controls the size
18 * of the points rendered based on the geometric error of their tile.
19 */
20 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Cesium")
21 bool Attenuation = false;
22
23 /**
24 * The scale to be applied to the tile's geometric error before it is used
25 * to compute attenuation. Larger values will result in larger points.
26 */
27 UPROPERTY(
28 EditAnywhere,
29 BlueprintReadWrite,
30 Category = "Cesium",
31 meta = (ClampMin = 0.0))
32 float GeometricErrorScale = 1.0f;
33
34 /**
35 * The maximum point attenuation in pixels. If this is zero, the
36 * Cesium3DTileset's maximumScreenSpaceError will be used as the maximum point
37 * attenuation.
38 */
39 UPROPERTY(
40 EditAnywhere,
41 BlueprintReadWrite,
42 Category = "Cesium",
43 meta = (ClampMin = 0.0))
44 float MaximumAttenuation = 0.0f;
45
46 /**
47 * The average base resolution for the dataset in meters. For example,
48 * a base resolution of 0.05 assumes an original capture resolution of
49 * 5 centimeters between neighboring points.
50 *
51 * This is used in place of geometric error when the tile's geometric error is
52 * 0. If this value is zero, each tile with a geometric error of 0 will have
53 * its geometric error approximated instead.
54 */
55 UPROPERTY(
56 EditAnywhere,
57 BlueprintReadWrite,
58 Category = "Cesium",
59 meta = (ClampMin = 0.0))
60 float BaseResolution = 0.0f;
61
62 bool
63 operator==(const FCesiumPointCloudShading& OtherPointCloudShading) const {
64 return Attenuation == OtherPointCloudShading.Attenuation &&
65 GeometricErrorScale == OtherPointCloudShading.GeometricErrorScale &&
66 MaximumAttenuation == OtherPointCloudShading.MaximumAttenuation &&
67 BaseResolution == OtherPointCloudShading.BaseResolution;
68 }
69
70 bool
71 operator!=(const FCesiumPointCloudShading& OtherPointCloudShading) const {
72 return !(*this == OtherPointCloudShading);
73 }
74};
Options for adjusting how point clouds are rendered using 3D Tiles.
float BaseResolution
The average base resolution for the dataset in meters.
float GeometricErrorScale
The scale to be applied to the tile's geometric error before it is used to compute attenuation.
float MaximumAttenuation
The maximum point attenuation in pixels.
bool operator!=(const FCesiumPointCloudShading &OtherPointCloudShading) const
bool Attenuation
Whether or not to perform point attenuation.