cesium-native 0.43.0
Loading...
Searching...
No Matches
CesiumQuantizedMeshTerrain::Layer Struct Reference

A quantized-mesh terrain layer.json. More...

#include <CesiumQuantizedMeshTerrain/Layer.h>

Inheritance diagram for CesiumQuantizedMeshTerrain::Layer:
CesiumQuantizedMeshTerrain::LayerSpec CesiumUtility::ExtensibleObject

Public Member Functions

std::optional< CesiumGeospatial::ProjectiongetProjection (const CesiumGeospatial::Ellipsoid &ellipsoid=CesiumGeospatial::Ellipsoid::WGS84) const noexcept
 Gets the projection specified by this layer.json.
 
std::optional< CesiumGeometry::QuadtreeTilingSchemegetTilingScheme (const CesiumGeospatial::Ellipsoid &ellipsoid=CesiumGeospatial::Ellipsoid::WGS84) const noexcept
 Gets the tiling scheme specified by this layer.json.
 
std::optional< CesiumGeospatial::BoundingRegiongetRootBoundingRegion (const CesiumGeospatial::Ellipsoid &ellipsoid=CesiumGeospatial::Ellipsoid::WGS84) const noexcept
 Gets the bounding region for the root tile.
 
- Public Member Functions inherited from CesiumQuantizedMeshTerrain::LayerSpec
int64_t getSizeBytes () const
 Calculates the size in bytes of this object, including the contents of all collections, pointers, and strings. This will NOT include the size of any extensions attached to the object. Calling this method may be slow as it requires traversing the object's entire structure.
 
- Public Member Functions inherited from CesiumUtility::ExtensibleObject
template<typename T >
bool hasExtension () const noexcept
 Checks if an extension exists given its static type.
 
template<typename T >
const T * getExtension () const noexcept
 Gets an extension given its static type.
 
template<typename T >
T * getExtension () noexcept
 Gets an extension given its static type.
 
const JsonValuegetGenericExtension (const std::string &extensionName) const noexcept
 Gets a generic extension with the given name as a CesiumUtility::JsonValue.
 
JsonValuegetGenericExtension (const std::string &extensionName) noexcept
 Gets a generic extension with the given name as a CesiumUtility::JsonValue.
 
template<typename T , typename... ConstructorArgumentTypes>
T & addExtension (ConstructorArgumentTypes &&... constructorArguments)
 Adds a statically-typed extension to this object.
 
template<typename T >
void removeExtension ()
 Removes a statically-typed extension from this object.
 
int64_t getSizeBytes () const
 Calculates the size in bytes of this ExtensibleObject, including all of its extras but NOT including its extensions. Calling this method may be slow as it requires traversing the entire object.
 

Additional Inherited Members

- Public Attributes inherited from CesiumQuantizedMeshTerrain::LayerSpec
std::string attribution
 The attribution (credit) string for the terrain.
 
std::vector< std::vector< CesiumQuantizedMeshTerrain::AvailabilityRectangle > > available
 The tile availability information. The outer array is indexed by tile level. The inner array is a list of rectangles of availability at that level. Tiles themselves may also contain further availability information for their subtree.
 
std::vector< double > bounds = {-180, -90, 180, 90}
 The bounding box of the terrain, expressed as west, south, east, north in degrees.
 
std::string description
 The description of this terrain tileset.
 
std::vector< std::string > extensionsProperty
 The extensions available for this tileset.
 
std::string format = "quantized-mesh-1.0"
 The format of the terrain tiles. Should be "quantized-mesh-1.0".
 
int64_t maxzoom = int64_t()
 The maximum level for which there are any available tiles.
 
int64_t minzoom = 0
 The minimum level for which there are any available tiles.
 
std::optional< int64_t > metadataAvailability
 The levels at metadata is found in tiles. For example, if this value is 10, then metadata is found at levels 0, 10, 20, etc.
 
std::string name = "Terrain"
 The name of this terrain tileset.
 
std::optional< std::string > parentUrl
 The URL of the parent layer.json that this one is layered on top of.
 
std::string projection = "EPSG:4326"
 The map projection of this tileset. Valid values are "EPSG:4326" and "EPSG:3857".
 
std::string scheme = "tms"
 The tiling scheme. The only valid value is "tms".
 
std::vector< std::string > tiles
 The URL templates from which to obtain tiles.
 
std::string version = "1.0.0"
 The version of this tileset.
 
- Public Attributes inherited from CesiumUtility::ExtensibleObject
std::unordered_map< std::string, std::any > extensions
 The extensions attached to this object.
 
JsonValue::Object extras
 Application-specific data.
 
JsonValue::Object unknownProperties
 Unknown properties that exist on this object but do not have any representation in the statically-typed classes.
 
- Static Public Attributes inherited from CesiumQuantizedMeshTerrain::LayerSpec
static constexpr const char * TypeName = "Layer"
 The original name of this type.
 
- Protected Member Functions inherited from CesiumQuantizedMeshTerrain::LayerSpec
 LayerSpec ()=default
 This class is not meant to be instantiated directly. Use Layer instead.
 

Detailed Description

A quantized-mesh terrain layer.json.

Definition at line 17 of file Layer.h.

Member Function Documentation

◆ getProjection()

std::optional< CesiumGeospatial::Projection > CesiumQuantizedMeshTerrain::Layer::getProjection ( const CesiumGeospatial::Ellipsoid & ellipsoid = CesiumGeospatial::Ellipsoid::WGS84) const
noexcept

Gets the projection specified by this layer.json.

Returns
The projection, or std::nullopt if this layer.json does not specify a valid projection.

◆ getRootBoundingRegion()

std::optional< CesiumGeospatial::BoundingRegion > CesiumQuantizedMeshTerrain::Layer::getRootBoundingRegion ( const CesiumGeospatial::Ellipsoid & ellipsoid = CesiumGeospatial::Ellipsoid::WGS84) const
noexcept

Gets the bounding region for the root tile.

The rectangle will be the maximum rectangle for the terrain's projection (geographic or web mercator). The heights will range from -1000.0 to 9000.0.

Returns
The bounding rectangle, or std::nullopt if the bounding region cannot be determined from this layer.json.

◆ getTilingScheme()

std::optional< CesiumGeometry::QuadtreeTilingScheme > CesiumQuantizedMeshTerrain::Layer::getTilingScheme ( const CesiumGeospatial::Ellipsoid & ellipsoid = CesiumGeospatial::Ellipsoid::WGS84) const
noexcept

Gets the tiling scheme specified by this layer.json.

Returns
The tiling scheme, or std::nullopt if this layer.json does not specify a tiling scheme.

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