Class ArcGISMapImageLayer
A layer that can display data from an ArcGIS Map service by using dynamically generated map images.
Namespace: Esri.ArcGISRuntime.Mapping
Assembly: Esri.ArcGISRuntime.dll
Syntax
public sealed class ArcGISMapImageLayer : ImageAdjustmentLayer, INotifyPropertyChanged, ILoadable, ILayerContent, ITimeAware
Remarks
ArcGIS map image layer displays maps from an ArcGIS map server (version 9.3 and higher) using REST. A map service can contain multiple layers, rendered by the server each time a request is made and returned to the client as a single image. While the image itself does not contain information about the features it displays, you can get the underlying data (service feature table) for each sublayer. This layer supports time-based filtering.
Functional characteristics
Map images are created and returned by the server on every request, so they always show the latest data at the time of the request. Characteristics of the image, such as brightness, contrast, gamma, and opacity can be specified. By obtaining the associated sublayers of the ArcGISMapImageLayer using the Sublayers property, you can control each sublayer visibility and filter the data via the definition expression. Also, the spatial reference can be changed from the service's default and the service will reproject each image on the fly.
The underlying service feature table, for each map
image sublayer or for non-spatial tables used in the service, can be accessed via the
Tables property. These tables can be queried using any
valid combination of attribute, spatial, and temporal criteria via the numerous
QueryFeaturesAsync
methods. You can also query for
summary statistics
or to find related features in other tables via the numerous QueryRelatedFeaturesAsync
methods.
If you want the background color for the map image to be transparent, make sure the ImageFormat is set to PNG.
Performance characteristic
The map service creates map images on the fly. Rendering time depends on the amount and complexity of the data in the map. This will typically be slower than fetching the equivalent map as pre-rendered (or cached) tiles via an ArcGISTiledLayer. Because the server renders the map, map image layers require less processing time on the client than similar maps rendered locally.
ArcGIS map image layers are good candidates for showing features that change periodically over time, or that require filtering by the user. Although rendering occurs on the server, you have access to service feature tables for all sublayers (as well as non-spatial tables and relationships).
Sample Code:
Constructors
Name | Description |
---|---|
ArcGISMapImageLayer(Item) | Initializes a new instance of the ArcGISMapImageLayer class from the specified PortalItem. |
ArcGISMapImageLayer(Uri) | Initializes a new instance of the ArcGISMapImageLayer class with the specified URI. |
Properties
Name | Description |
---|---|
FullTimeExtent | Gets the temporal window that encapsulates the instance's complete set of data |
GeodatabaseVersion | Gets or sets the geodatabase version of the map image layer. |
ImageFormat | Gets or sets the MapServiceImageFormat used to generate map images for this layer. |
IsTimeFilteringEnabled | Gets or sets a value indicating whether the instance respects any temporal filters that are applied to it. |
RefreshInterval | Gets or sets the refresh interval on an ArcGISMapImageLayer. |
ServiceInfo | Gets the map service information. |
Source | Gets or sets the URI of the map service. |
Sublayers | Gets a list of sublayers of this map image layer. |
SupportsTimeFiltering | Gets a value indicating whether the instance supports filtering its data based on time. |
Tables | Gets a read-only list of non-spatial tables in the map image layer. |
TimeInterval | Gets a temporal value that represents the suggested temporal interval to use when sequentially stepping through the instance's data by time |
TimeOffset | Gets or sets the amount of time by which to offset the temporal values of data points in this instance when displaying the data in a GeoView. |
Methods
Name | Description |
---|---|
LoadTablesAndLayersAsync() | Asynchronously initiates loading of the layer's sublayers. |
ResetSublayers() | Resets the sublayers of this ArcGISMapImageLayer to the default values defined by the ArcGIS Server service. |
Events
Name | Description |
---|---|
FullTimeExtentChanged | Raised when the FullTimeExtent of the instance's data changes |
See Also
Applies to
Target | Versions |
---|---|
.NET Standard 2.0 | 100.3 - 200.6 |
.NET | 100.13 - 200.6 |
.NET Windows | 100.13 - 200.6 |
.NET Android | 200.0 - 200.6 |
.NET iOS | 200.0 - 200.6 |
.NET Framework | 100.0 - 200.6 |
Xamarin.Android | 100.0 - 100.15 |
Xamarin.iOS | 100.0 - 100.15 |
UWP | 100.0 - 200.6 |