Represents a layer that displays data on a map. More...
This class was introduced in Esri::ArcGISRuntime 100.0.
Public Functions
virtual | ~Layer() override |
QString | attribution() const |
QString | description() const |
Esri::ArcGISRuntime::Envelope | fullExtent() const |
bool | isIdentifyEnabled() const |
Esri::ArcGISRuntime::Item * | item() const |
QString | layerId() const |
Esri::ArcGISRuntime::LayerType | layerType() const |
double | maxScale() const |
double | minScale() const |
float | opacity() const |
void | setDescription(const QString &description) |
void | setLayerId(const QString &layerId) |
void | setMaxScale(double maxScale) |
void | setMinScale(double minScale) |
void | setName(const QString &name) |
void | setOpacity(float opacity) const |
Esri::ArcGISRuntime::SpatialReference | spatialReference() const |
Reimplemented Public Functions
virtual bool | canChangeVisibility() const override |
virtual void | cancelLoad() override |
virtual bool | isAutoFetchLegendInfos() const override |
virtual bool | isShowInLegend() const override |
virtual bool | isVisible() const override |
virtual bool | isVisibleAtScale(double scale) const override |
virtual Esri::ArcGISRuntime::LegendInfoListModel * | legendInfos() const override |
virtual void | load() override |
virtual Esri::ArcGISRuntime::Error | loadError() const override |
virtual Esri::ArcGISRuntime::LoadStatus | loadStatus() const override |
virtual QString | name() const override |
virtual void | retryLoad() override |
virtual void | setAutoFetchLegendInfos(bool autoFetchLegendInfos) override |
virtual void | setShowInLegend(bool showInLegend) override |
virtual void | setVisible(bool visible) override |
virtual QList<Esri::ArcGISRuntime::LayerContent *> | subLayerContents() const override |
Signals
void | doneLoading(Esri::ArcGISRuntime::Error loadError) |
void | loadStatusChanged(Esri::ArcGISRuntime::LoadStatus loadStatus) |
void | visibleChanged(bool visible) |
Detailed Description
This base class contains methods to call on layer subclasses to change extent, draw, and so on.
Layer is the base class for all layer types. A layer is a representation of geographic data portrayed using symbols and text labels. Multiple layers can be 'stacked' to enhance the information displayed. Layers are displayed in a Map inside a MapView control. Layers are drawn bottom-to-top, so the first layer in a map's layer collection is drawn first (on the bottom) and each subsequent layer is drawn on top of it.
Layer is the base class for all these layer types:
Layer type | 2D/3D | Time-aware | Online/offline | Sources |
---|---|---|---|---|
AnnotationLayer | 2D | No | Both | ArcGIS feature service, portal item, mobile map package (.mmpk) |
ArcGISMapImageLayer | Both | Yes | Online | ArcGIS map service |
ArcGISSceneLayer | 3D | No | Both | Scene service or scene package |
ArcGISTiledLayer | Both | No | ArcGIS tile service, tile package (.tpk/.tpkx) | |
ArcGISVectorTiledLayer | 2D | No | Both | ArcGIS vector tile service, vector tile package (.vtpk) |
BingMapsLayer | Both | No | Online | Bing maps |
EncLayer | 2D | No | Offline | ENC exchange set, ENC cell |
FeatureCollectionLayer | Both | No | Both | Portal item, web map, feature set / query result |
FeatureLayer | Both | Yes | Both | ArcGIS feature service, WFS, shapefile, GeoPackage, geodatabase, OGC API Features |
GroupLayer | Both | No | Both | Other layers and group layers |
KmlLayer | Both | Yes | Both | KML file (.kml, .kmz) |
IntegratedMeshLayer | 3D | No | Both | Scene later package (.slpk) |
MobileBasemapLayer | 2D | No | Offline | Mobile map package (.mmpk) |
OpenStreetMapLayer | Both | No | Online | OpenStreetMap.org |
PointCloudLayer | 3D | No | Both | Portal item, scene layer package (.slpk) |
RasterLayer | Both | Yes | Both | GeoPackage, raster file, ArcGIS Image service |
SubtypeFeatureLayer | 2D | No | Both | ArcGIS feature service, geodatabase |
WebTiledLayer | Both | No | Online | Web tile service |
WmsLayer | Both | Yes | Online | WMS service |
WmtsLayer | Both | No | Online | WMTS service |
Member Function Documentation
[signal]
void Layer::doneLoading (Esri::ArcGISRuntime::Error loadError )
Signal emitted when this object is done loading.
- loadError - Details about any error that may have occurred.
Note: If there is a load error it will also be emitted on the errorOccurred
signal.
[signal]
void Layer::loadStatusChanged (Esri::ArcGISRuntime::LoadStatus loadStatus )
Signal emitted when the loadStatus changes for this object.
See also Loadable.
[signal]
void Layer::visibleChanged (bool visible)
Signal emitted when the isVisible property changes for this object.
- visible - The current visibility of the layer.
This function was introduced in Esri::ArcGISRuntime 100.9.
[override virtual]
Layer::~Layer()
Destructor.
QString Layer::attribution() const
Gets the layer's attribution if any is available.
[override virtual]
bool Layer::canChangeVisibility () const
Reimplements: LayerContent::canChangeVisibility() const.
Returns whether the layer's visibility can be changed.
See LayerContent.
[override virtual]
void Layer::cancelLoad ()
Reimplements: Loadable::cancelLoad().
See Loadable.
QString Layer::description() const
Gets the layer's description.
For service layers, the description is defined by the service when the layer initializes.
See also setDescription().
Esri::ArcGISRuntime::Envelope Layer::fullExtent () const
Gets the full extent of the layer.
Returns an empty Envelope if the layer does not have a defined full extent.
[override virtual]
bool Layer::isAutoFetchLegendInfos () const
Reimplements: LayerContent::isAutoFetchLegendInfos() const.
Returns whether legend infos are automatically fetched by the layer's legend info list model.
See LayerContent.
bool Layer::isIdentifyEnabled () const
Returns whether the layer supports identify.
[override virtual]
bool Layer::isShowInLegend () const
Reimplements: LayerContent::isShowInLegend() const.
Returns whether the layer will be shown in the legend.
See LayerContent.
[override virtual]
bool Layer::isVisible () const
Reimplements: LayerContent::isVisible() const.
Returns whether the layer is enabled to be visible.
See LayerContent.
[override virtual]
bool Layer::isVisibleAtScale (double scale) const
Reimplements: LayerContent::isVisibleAtScale(double scale) const.
Returns whether the sublayer is visible at a given scale.
See LayerContent.
Esri::ArcGISRuntime::Item *Layer::item() const
Gets the item the layer has been created from.
QString Layer::layerId () const
Gets the layer's ID specified in the web map JSON.
See also setLayerId().
Esri::ArcGISRuntime::LayerType Layer::layerType () const
Gets the layer's type.
[override virtual]
Esri::ArcGISRuntime::LegendInfoListModel *Layer::legendInfos () const
Reimplements: LayerContent::legendInfos() const.
Returns a list of legend information for the layer and any sublayers.
See LayerContent.
[override virtual]
void Layer::load()
Reimplements: Loadable::load().
See Loadable.
[override virtual]
Esri::ArcGISRuntime::Error Layer::loadError () const
Reimplements: Loadable::loadError() const.
See Loadable.
[override virtual]
Esri::ArcGISRuntime::LoadStatus Layer::loadStatus () const
Reimplements: Loadable::loadStatus() const.
See Loadable.
double Layer::maxScale () const
Gets the maximum scale at which the layer displays.
For service layers, this is defined by the service.
See also setMaxScale().
double Layer::minScale () const
Gets the minimum scale at which the layer displays.
For service layers, this is defined by the service.
See also setMinScale().
[override virtual]
QString Layer::name() const
Reimplements: LayerContent::name() const.
Gets the layer's name.
See LayerContent.
See also setName().
float Layer::opacity() const
Gets the opacity of the layer between 0.0 and 1.0.
0.0 is transparent and 1.0 is solid or opaque.
See also setOpacity().
[override virtual]
void Layer::retryLoad ()
Reimplements: Loadable::retryLoad().
See Loadable.
[override virtual]
void Layer::setAutoFetchLegendInfos (bool autoFetchLegendInfos )
Reimplements: LayerContent::setAutoFetchLegendInfos(bool autoFetchLegendInfos).
Sets whether legend infos are automatically fetched by the layer's legend info list model to autoFetchLegendInfos.
See LayerContent.
See also isAutoFetchLegendInfos().
void Layer::setDescription (const QString &description)
Sets the layer's description.
description The description.
See also description().
void Layer::setLayerId (const QString &layerId )
Sets the layer's ID specified in the web map JSON to layerId.
See also layerId().
void Layer::setMaxScale (double maxScale )
Sets the maximum scale (maxScale) at which the layer displays.
For service layers, this is defined by the service.
See also maxScale().
void Layer::setMinScale (double minScale )
Sets the minimum scale (minScale) at which the layer displays.
For service layers, this is defined by the service.
See also minScale().
void Layer::setName (const QString &name)
Sets the layer's name.
The name is defined by the service when the layer initializes, so this method is typically used after the service layer initializes.
name The name.
See also name().
void Layer::setOpacity (float opacity) const
Sets the opacity of the layer to opacity.
0.0 is transparent and 1.0 is solid or opaque.
See also opacity().
[override virtual]
void Layer::setShowInLegend (bool showInLegend )
Reimplements: LayerContent::setShowInLegend(bool showInLegend).
Sets whether the layer will be shown in the legend to showInLegend.
See LayerContent.
See also isShowInLegend().
[override virtual]
void Layer::setVisible (bool visible)
Reimplements: LayerContent::setVisible(bool visible).
Sets whether the layer is visible to visible.
See LayerContent.
See also isVisible().
Esri::ArcGISRuntime::SpatialReference Layer::spatialReference () const
Gets the spatial reference of the layer.
[override virtual]
QList<Esri::ArcGISRuntime::LayerContent *> Layer::subLayerContents () const
Reimplements: LayerContent::subLayerContents() const.
Gets a list of layer contents for any sublayers.
See LayerContent.