Cesium for Unreal 2.12.0
Loading...
Searching...
No Matches
UCesiumRasterOverlay Class Reference

A quadtree pyramid of 2D raster images meant to be draped over a Cesium 3D Tileset. More...

#include <CesiumRasterOverlay.h>

Inheritance diagram for UCesiumRasterOverlay:

Public Member Functions

 UCesiumRasterOverlay ()
 
void AddToTileset ()
 Displays this raster overlay on its owning Cesium 3D Tileset Actor, without changing its activation state.
 
void RemoveFromTileset ()
 Stops displaying this raster overlay on its owning Cesium 3D Tileset Actor.
 
void Refresh ()
 Refreshes this overlay by removing from its owning Cesium 3D Tileset Actor and re-adding it.
 
double GetMaximumScreenSpaceError () const
 
void SetMaximumScreenSpaceError (double Value)
 
int32 GetMaximumTextureSize () const
 
void SetMaximumTextureSize (int32 Value)
 
int32 GetMaximumSimultaneousTileLoads () const
 
void SetMaximumSimultaneousTileLoads (int32 Value)
 
int64 GetSubTileCacheBytes () const
 
void SetSubTileCacheBytes (int64 Value)
 
virtual void Activate (bool bReset) override
 Activates this raster overlay, which will display it on the Cesium3DTileset to which the component is attached, if it isn't already displayed.
 
virtual void Deactivate () override
 Deactivates this raster overlay.
 
virtual void OnComponentDestroyed (bool bDestroyingHierarchy) override
 
virtual bool IsReadyForFinishDestroy () override
 

Public Attributes

FString MaterialLayerKey = "Overlay0"
 The key to use to match this overlay to a material layer.
 
FRasterOverlayRendererOptions rendererOptions
 Sets the texture filter and texture group of raster tile images.
 

Protected Member Functions

Cesium3DTilesSelection::TilesetFindTileset () const
 
virtual std::unique_ptr< CesiumRasterOverlays::RasterOverlayCreateOverlay (const CesiumRasterOverlays::RasterOverlayOptions &options={}) 0
 
virtual void OnAdd (Cesium3DTilesSelection::Tileset *pTileset, CesiumRasterOverlays::RasterOverlay *pOverlay)
 
virtual void OnRemove (Cesium3DTilesSelection::Tileset *pTileset, CesiumRasterOverlays::RasterOverlay *pOverlay)
 

Protected Attributes

double MaximumScreenSpaceError = 2.0
 The maximum number of pixels of error when rendering this overlay.
 
int32 MaximumTextureSize = 2048
 The maximum texel size of raster overlay textures, in either direction.
 
int32 MaximumSimultaneousTileLoads = 20
 The maximum number of overlay tiles that may simultaneously be in the process of loading.
 
int64 SubTileCacheBytes = 16 * 1024 * 1024
 The maximum number of bytes to use to cache sub-tiles in memory.
 
bool ShowCreditsOnScreen
 Whether or not to show credits of this raster overlay on screen.
 

Detailed Description

A quadtree pyramid of 2D raster images meant to be draped over a Cesium 3D Tileset.

Raster overlays are commonly used for satellite imagery, street maps, and more.

Definition at line 53 of file CesiumRasterOverlay.h.

Constructor & Destructor Documentation

◆ UCesiumRasterOverlay()

UCesiumRasterOverlay::UCesiumRasterOverlay ( )

Member Function Documentation

◆ Activate()

virtual void UCesiumRasterOverlay::Activate ( bool bReset)
overridevirtual

Activates this raster overlay, which will display it on the Cesium3DTileset to which the component is attached, if it isn't already displayed.

The overlay will continue to be shown on the tileset until it is deactivated.

If the overlay is already displayed on the Cesium3DTileset, calling this function will not cause it to pick up any new values for properties that have been modified since it was added. To do that, call Refresh.

If you created this overlay component via Blueprints, consider setting the "Auto Activate" property to false on the "Add Component" node and calling Activate after setting all the desired properties. This will avoid the need to call Refresh, and will ensure the overlay is not loaded multiple times.

Parameters
bResetWhether the activation should happen even if ShouldActivate returns false.

◆ AddToTileset()

void UCesiumRasterOverlay::AddToTileset ( )

Displays this raster overlay on its owning Cesium 3D Tileset Actor, without changing its activation state.

It is usually better to call Activate rather than this function, in order to ensure that the component is also activated. Otherwise, if the Cesium3DTileset is reloaded for any reason, this overlay will no longer be shown.

If the overlay is already added or if this component's Owner is not a Cesium 3D Tileset, this method does nothing.

◆ CreateOverlay()

virtual std::unique_ptr< CesiumRasterOverlays::RasterOverlay > UCesiumRasterOverlay::CreateOverlay ( const CesiumRasterOverlays::RasterOverlayOptions & options = {})
protectedvirtual

◆ Deactivate()

virtual void UCesiumRasterOverlay::Deactivate ( )
overridevirtual

Deactivates this raster overlay.

This will stop displaying it on the Cesium3DTileset to which the component is attached. The overlay will not be shown again until the component is re-activated.

◆ FindTileset()

Cesium3DTilesSelection::Tileset * UCesiumRasterOverlay::FindTileset ( ) const
protected

◆ GetMaximumScreenSpaceError()

double UCesiumRasterOverlay::GetMaximumScreenSpaceError ( ) const

◆ GetMaximumSimultaneousTileLoads()

int32 UCesiumRasterOverlay::GetMaximumSimultaneousTileLoads ( ) const

◆ GetMaximumTextureSize()

int32 UCesiumRasterOverlay::GetMaximumTextureSize ( ) const

◆ GetSubTileCacheBytes()

int64 UCesiumRasterOverlay::GetSubTileCacheBytes ( ) const

◆ IsReadyForFinishDestroy()

virtual bool UCesiumRasterOverlay::IsReadyForFinishDestroy ( )
overridevirtual

◆ OnAdd()

virtual void UCesiumRasterOverlay::OnAdd ( Cesium3DTilesSelection::Tileset * pTileset,
CesiumRasterOverlays::RasterOverlay * pOverlay )
inlineprotectedvirtual

Definition at line 250 of file CesiumRasterOverlay.h.

◆ OnComponentDestroyed()

virtual void UCesiumRasterOverlay::OnComponentDestroyed ( bool bDestroyingHierarchy)
overridevirtual

◆ OnRemove()

virtual void UCesiumRasterOverlay::OnRemove ( Cesium3DTilesSelection::Tileset * pTileset,
CesiumRasterOverlays::RasterOverlay * pOverlay )
inlineprotectedvirtual

Definition at line 253 of file CesiumRasterOverlay.h.

◆ Refresh()

void UCesiumRasterOverlay::Refresh ( )

Refreshes this overlay by removing from its owning Cesium 3D Tileset Actor and re-adding it.

If this component's Owner is not a Cesium 3D Tileset Actor, this method does nothing. If this component is not active, the overlay will be removed from the Cesium3DTileset if already present but not re-added.

◆ RemoveFromTileset()

void UCesiumRasterOverlay::RemoveFromTileset ( )

Stops displaying this raster overlay on its owning Cesium 3D Tileset Actor.

It is usually better to call Deactivate rather than this function, in order to ensure that the component is also deactivated. Otherwise, if the component remains active and the Cesium3DTileset is reloaded for any reason, this overlay will reappear.

If the overlay is not yet added or if this component's Owner is not a Cesium 3D Tileset, this method does nothing.

◆ SetMaximumScreenSpaceError()

void UCesiumRasterOverlay::SetMaximumScreenSpaceError ( double Value)

◆ SetMaximumSimultaneousTileLoads()

void UCesiumRasterOverlay::SetMaximumSimultaneousTileLoads ( int32 Value)

◆ SetMaximumTextureSize()

void UCesiumRasterOverlay::SetMaximumTextureSize ( int32 Value)

◆ SetSubTileCacheBytes()

void UCesiumRasterOverlay::SetSubTileCacheBytes ( int64 Value)

Member Data Documentation

◆ MaterialLayerKey

FString UCesiumRasterOverlay::MaterialLayerKey = "Overlay0"

The key to use to match this overlay to a material layer.

When using Material Layers, any material layers inside a "Cesium" layer stack with a name that matches this name will have their Texture, TranslationScale, and TextureCoordinateIndex properties set automatically so that a ML_CesiumOverlay layer function (or similar) will correctly sample from this overlay.

Definition at line 67 of file CesiumRasterOverlay.h.

◆ MaximumScreenSpaceError

double UCesiumRasterOverlay::MaximumScreenSpaceError = 2.0
protected

The maximum number of pixels of error when rendering this overlay.

This is used to select an appropriate level-of-detail.

When this property has its default value, 2.0, it means that raster overlay images will be sized so that, when zoomed in closest, a single pixel in the raster overlay maps to approximately 2x2 pixels on the screen.

Definition at line 184 of file CesiumRasterOverlay.h.

◆ MaximumSimultaneousTileLoads

int32 UCesiumRasterOverlay::MaximumSimultaneousTileLoads = 20
protected

The maximum number of overlay tiles that may simultaneously be in the process of loading.

Definition at line 212 of file CesiumRasterOverlay.h.

◆ MaximumTextureSize

int32 UCesiumRasterOverlay::MaximumTextureSize = 2048
protected

The maximum texel size of raster overlay textures, in either direction.

Images created by this overlay will be no more than this number of texels in either direction. This may result in reduced raster overlay detail in some cases.

Definition at line 200 of file CesiumRasterOverlay.h.

◆ rendererOptions

FRasterOverlayRendererOptions UCesiumRasterOverlay::rendererOptions

Sets the texture filter and texture group of raster tile images.

Depending on the project settings, the default texture filter, TF_Default, should have the best quality.

Definition at line 75 of file CesiumRasterOverlay.h.

◆ ShowCreditsOnScreen

bool UCesiumRasterOverlay::ShowCreditsOnScreen
protected

Whether or not to show credits of this raster overlay on screen.

Definition at line 236 of file CesiumRasterOverlay.h.

◆ SubTileCacheBytes

int64 UCesiumRasterOverlay::SubTileCacheBytes = 16 * 1024 * 1024
protected

The maximum number of bytes to use to cache sub-tiles in memory.

This is used by provider types that have an underlying tiling scheme that may not align with the tiling scheme of the geometry tiles on which the raster overlay tiles are draped. Because a single sub-tile may overlap multiple geometry tiles, it is useful to cache loaded sub-tiles in memory in case they're needed again soon. This property controls the maximum size of that cache.

Definition at line 230 of file CesiumRasterOverlay.h.


The documentation for this class was generated from the following file: