cesium-native 0.50.0
Loading...
Searching...
No Matches
GeoJsonDocumentRasterOverlay.h
1#pragma once
2
3#include <CesiumAsync/AsyncSystem.h>
4#include <CesiumAsync/IAssetAccessor.h>
5#include <CesiumGeospatial/CartographicPolygon.h>
6#include <CesiumGeospatial/Ellipsoid.h>
7#include <CesiumRasterOverlays/Library.h>
8#include <CesiumRasterOverlays/RasterOverlay.h>
9#include <CesiumRasterOverlays/RasterOverlayTileProvider.h>
10#include <CesiumUtility/Color.h>
11#include <CesiumUtility/IntrusivePointer.h>
12#include <CesiumVectorData/GeoJsonDocument.h>
13#include <CesiumVectorData/GeoJsonObject.h>
14#include <CesiumVectorData/VectorStyle.h>
15
16#include <spdlog/fwd.h>
17
18#include <memory>
19#include <string>
20
21namespace CesiumRasterOverlays {
22
43
48class CESIUMRASTEROVERLAYS_API GeoJsonDocumentRasterOverlay final
49 : public RasterOverlay {
50
51public:
63 const CesiumAsync::AsyncSystem& asyncSystem,
64 const std::string& name,
65 const std::shared_ptr<CesiumVectorData::GeoJsonDocument>& document,
66 const GeoJsonDocumentRasterOverlayOptions& vectorOverlayOptions,
67 const RasterOverlayOptions& overlayOptions = {});
68
80 const std::string& name,
81 CesiumAsync::Future<std::shared_ptr<CesiumVectorData::GeoJsonDocument>>&&
82 documentFuture,
83 const GeoJsonDocumentRasterOverlayOptions& vectorOverlayOptions,
84 const RasterOverlayOptions& overlayOptions = {});
85
86 virtual ~GeoJsonDocumentRasterOverlay() override;
87
89 const CesiumAsync::AsyncSystem& asyncSystem,
90 const std::shared_ptr<CesiumAsync::IAssetAccessor>& pAssetAccessor,
91 const std::shared_ptr<CesiumUtility::CreditSystem>& pCreditSystem,
92 const std::shared_ptr<IPrepareRasterOverlayRendererResources>&
93 pPrepareRendererResources,
94 const std::shared_ptr<spdlog::logger>& pLogger,
96 const override;
97
98private:
100 _documentFuture;
102};
103} // namespace CesiumRasterOverlays
A system for managing asynchronous requests and tasks.
Definition AsyncSystem.h:36
A value that will be available in the future, as produced by AsyncSystem.
Definition Future.h:29
A quadratic surface defined in Cartesian coordinates.
Definition Ellipsoid.h:39
A raster overlay made from rasterizing a CesiumVectorData::GeoJsonDocument.
GeoJsonDocumentRasterOverlay(const CesiumAsync::AsyncSystem &asyncSystem, const std::string &name, const std::shared_ptr< CesiumVectorData::GeoJsonDocument > &document, const GeoJsonDocumentRasterOverlayOptions &vectorOverlayOptions, const RasterOverlayOptions &overlayOptions={})
Creates a new GeoJsonDocumentRasterOverlay.
virtual CesiumAsync::Future< CreateTileProviderResult > createTileProvider(const CesiumAsync::AsyncSystem &asyncSystem, const std::shared_ptr< CesiumAsync::IAssetAccessor > &pAssetAccessor, const std::shared_ptr< CesiumUtility::CreditSystem > &pCreditSystem, const std::shared_ptr< IPrepareRasterOverlayRendererResources > &pPrepareRendererResources, const std::shared_ptr< spdlog::logger > &pLogger, CesiumUtility::IntrusivePointer< const RasterOverlay > pOwner) const override
Begins asynchronous creation of a tile provider for this overlay and eventually returns it via a Futu...
GeoJsonDocumentRasterOverlay(const std::string &name, CesiumAsync::Future< std::shared_ptr< CesiumVectorData::GeoJsonDocument > > &&documentFuture, const GeoJsonDocumentRasterOverlayOptions &vectorOverlayOptions, const RasterOverlayOptions &overlayOptions={})
Creates a new GeoJsonDocumentRasterOverlay from a future.
RasterOverlay(const std::string &name, const RasterOverlayOptions &overlayOptions=RasterOverlayOptions())
Creates a new instance.
A smart pointer that calls addReference and releaseReference on the controlled object.
Classes for raster overlays, which allow draping massive 2D textures over a model.
A set of options for configuring a GeoJsonDocumentRasterOverlay.
CesiumVectorData::VectorStyle defaultStyle
The default style to use when no style is otherwise specified on a CesiumVectorData::GeoJsonObject.
CesiumGeospatial::Ellipsoid ellipsoid
The ellipsoid to use for this overlay.
Options for loading raster overlays.
Style information to use when drawing vector data.
Definition VectorStyle.h:96