An elevation source based on a tiled ArcGIS image service containing elevation data. More...
Header: | #include <ArcGISTiledElevationSource.h> |
Since: | Esri::ArcGISRuntime 100.0 |
Inherits: | Esri::ArcGISRuntime::ElevationSource and Esri::ArcGISRuntime::RemoteResource |
Public Functions
ArcGISTiledElevationSource(const QUrl &url, QObject *parent = nullptr) | |
ArcGISTiledElevationSource(const QUrl &url, Esri::ArcGISRuntime::Credential *credential, QObject *parent = nullptr) | |
ArcGISTiledElevationSource(Esri::ArcGISRuntime::Item *item, QObject *parent = nullptr) | |
ArcGISTiledElevationSource(Esri::ArcGISRuntime::TileCache *tileCache, QObject *parent = nullptr) | |
virtual | ~ArcGISTiledElevationSource() override |
Esri::ArcGISRuntime::Item * | item() const |
Esri::ArcGISRuntime::TileCache * | tileCache() const |
Reimplemented Public Functions
virtual Esri::ArcGISRuntime::Credential * | credential() const override |
virtual Esri::ArcGISRuntime::RequestConfiguration | requestConfiguration() const override |
virtual void | setRequestConfiguration(const Esri::ArcGISRuntime::RequestConfiguration &requestConfiguration) override |
virtual QUrl | url() const override |
Detailed Description
An ArcGIS tiled elevation source helps visualize maps and layers in 3D by providing a surface that layers may be draped or offset from.
You can create an ArcGIS tiled elevation source object from the URL, or PortalItem, of an online ArcGIS image service, or a local TileCache generated from an ArcGIS image service. In all cases, the ArcGIS Image Service must support elevation that is stored in the Limited Error Raster Compression (LERC) tile format. If your app is online and connected to ArcGIS Online, you can utilize the cached elevation image service, WorldElevation3D/Terrain 3D.
To utilize an elevation source in a scene's surface, add it to the scene's Surface::elevationSources collection.
Example:
Create an ArcGISTiledElevationSource from an online URL:
// create a new elevation source from Terrain3D REST service ArcGISTiledElevationSource* elevationSource = new ArcGISTiledElevationSource( QUrl("https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"), this); // add the elevation source to the scene to display elevation m_scene->baseSurface()->elevationSources()->append(elevationSource);
Relevant samples:
- Create terrain surface from a local tile package: Set the terrain surface with elevation described by a local tile package.
- Display a scene: Display a scene with a terrain surface and imagery.
- Display a scene layer: Add a scene layer to a scene.
- Get elevation at point: Get the elevation for a given point on a surface.
- Viewshed (camera): This sample demonstrates how to calculate a Viewshed from a SceneView's current Camera Viewpoint.
- Viewshed (location): Perform a viewshed analysis from a defined vantage point.
See also Surface.
Member Function Documentation
[explicit]
ArcGISTiledElevationSource::ArcGISTiledElevationSource (const QUrl &url, QObject *parent = nullptr)
Creates an ArcGIS tiled elevation source with using a URL to an elevation service object.
- url - The URL to an elevation service or to an elevation service portal item.
- parent - The optional parent QObject.
An ArcGIS tiled elevation source is added to a Surface and provides elevation data on which layers may be draped or offset from. The ArcGIS tiled elevation source uses an ArcGIS Image service to provide the elevation data.
ArcGISTiledElevationSource::ArcGISTiledElevationSource (const QUrl &url, Esri::ArcGISRuntime::Credential *credential, QObject *parent = nullptr)
Constructor that accepts a URL (url), a credential, and an optional parent.
Credential are applied if the provided URL is to a secured service.
The URL can be:
- an online service that has the elevation source data.
- the path to a local tile cache such as a
.tpk
file with LERC (Limited Error Raster Compression) encoded tiles. See the ArcGIS Pro Tile Package documentation (since Esri::ArcGISRuntime 100.1).
[explicit]
ArcGISTiledElevationSource::ArcGISTiledElevationSource (Esri::ArcGISRuntime::Item *item, QObject *parent = nullptr)
Creates an ArcGIS tiled elevation source with a portal item.
- item - The ArcGIS tiled elevation source item (only PortalItem are supported).
- parent - The optional parent QObject.
An ArcGIS tiled elevation source is added to an Surface and provides elevation data on which layers may be draped or offset from. The ArcGIS tiled elevation source uses an ArcGIS Image service to provide the elevation data.
[explicit, since Esri::ArcGISRuntime 100.1]
ArcGISTiledElevationSource::ArcGISTiledElevationSource (Esri::ArcGISRuntime::TileCache *tileCache , QObject *parent = nullptr)
Creates an ArcGIS tiled elevation source with a tile cache.
- tileCache - Metadata for a local cache of elevation tiles that can be used to create an elevation source.
- parent - The optional parent QObject.
An ArcGIS tiled elevation source is added to a Surface and provides elevation data that layers may be draped or offset from. The ArcGIS tiled elevation source uses a TileCache to provide the elevation data. Only tile caches that contain LERC tiles are supported. Use an ExportTileCacheTask to create an offline tile cache from an elevation image service.
This function was introduced in Esri::ArcGISRuntime 100.1.
[override virtual]
ArcGISTiledElevationSource::~ArcGISTiledElevationSource ()
Destructor
[override virtual]
Esri::ArcGISRuntime::Credential *ArcGISTiledElevationSource::credential() const
Reimplements: RemoteResource::credential() const.
Returns the security credential used to access the elevation source service.
The credential is available if the service is secured.
Esri::ArcGISRuntime::Item *ArcGISTiledElevationSource::item() const
Gets the item being used by the elevation source.
See also ArcGISTiledElevationSource.
[override virtual, since Esri::ArcGISRuntime 100.1]
Esri::ArcGISRuntime::RequestConfiguration ArcGISTiledElevationSource::requestConfiguration () const
Reimplements: RemoteResource::requestConfiguration() const.
Returns the RequestConfiguration in use by this object.
This function was introduced in Esri::ArcGISRuntime 100.1.
See also setRequestConfiguration().
[override virtual, since Esri::ArcGISRuntime 100.1]
void ArcGISTiledElevationSource::setRequestConfiguration (const Esri::ArcGISRuntime::RequestConfiguration &requestConfiguration )
Reimplements: RemoteResource::setRequestConfiguration(const Esri::ArcGISRuntime::RequestConfiguration &requestConfiguration).
Sets configuration parameters used for network requests sent by this object to requestConfiguration.
This function was introduced in Esri::ArcGISRuntime 100.1.
See also requestConfiguration().
[since Esri::ArcGISRuntime 100.1]
Esri::ArcGISRuntime::TileCache *ArcGISTiledElevationSource::tileCache () const
Returns the tile cache of the elevation service.
This function was introduced in Esri::ArcGISRuntime 100.1.
See also ArcGISTiledElevationSource.
[override virtual]
QUrl ArcGISTiledElevationSource::url() const
Reimplements: RemoteResource::url() const.
Returns the URL of the ArcGIS tiled elevation source.
The elevation source URL in the ArcGIS tiled elevation source. This method can't be called once the elevation source is loading else ErrorType::CommonIllegalState error emit.
{ArcGISTiledElevationSource(const QUrl&, QObject*)}
See also Esri::ArcGISRuntime::ArcGISTiledElevationSource::ArcGISTiledElevationSource(const QUrl&, QObject*).