Class WebTiledLayer
A layer that requests image tiles based on a URL template, providing a simple way to display maps from non-ArcGIS web services or local tile caches.
Inheritance
Namespace: Esri.ArcGISRuntime.Mapping
Assembly: Esri.ArcGISRuntime.dll
Syntax
public sealed class WebTiledLayer : ServiceImageTiledLayer, INotifyPropertyChanged, ILoadable, ILayerContent
Remarks
This layer provides a simple way to integrate non-ArcGIS Services as a layer in a map. The URL
template usually follows a pattern similar to
https://{subDomain}.server.org/path/{level}/{col}/{row}.png
, where:
- "subDomain" is one of the strings in the subDomains list
- "level" corresponds to a zoom level
- "col" represents the column of the tile
- "row" represents the row of the tile.
The URL should be arranged to reflect how the tiles are organized in the cache or on the
server, and can point to a web server (https://
) or to a local file cache
(file://
).
The tiles retrieved by this class are accessed directly by URL. Because the service is only providing images, you are responsible for manually setting the attribution text on the map or scene view.
To create a custom service tiled layer whose URL follows the above pattern (or a similar pattern), you can extend this class. Alternatively, you can extend the super class ServiceImageTiledLayer, in which you implement a required method to set the request information for a given LOD, column, and row. Extending WebTiledLayer, however, has no such requirement.
An System.ArgumentException will be thrown when attempting to load a layer with invalid URI template.
If TileInfo is not specified, tiles are assumed to be in the OpenStreetMap tiling scheme, with 256x256 PNG tiles at 96 DPI, the WebMercator projection, and a FullExtent of [-180, -85.0511, 180, 85.051].
Functional characteristics
Tiles are fetched on demand using the specified URI template. Tiles are typically rendered and cached on the server but may be generated on demand by some services. Web tiled layers do not support identify, query, selection, or time.
Specifying sub-domains from which the layer will request tiles allows the load to be more evenly distributed among servers.
Performance characteristics
Web tiled layer requires a connection to the service at all times. Performance is similar to other raster tile layers.
Sample Code:
Constructors
Name | Description |
---|---|
WebTiledLayer(String) | Initializes a new instance of the WebTiledLayer class with the given URI template. |
WebTiledLayer(String, TileInfo, Envelope) | Initializes a new instance of the WebTiledLayer class with the given URI template, tiling scheme information, and extent. |
WebTiledLayer(String, IEnumerable<String>) | Initializes a new instance of the WebTiledLayer class with the given URI template and sub-domain list. |
WebTiledLayer(String, IEnumerable<String>, TileInfo, Envelope) | Initializes a new instance of the WebTiledLayer class with the given URI template, sub-domain list, tiling scheme information, and extent. |
Properties
Name | Description |
---|---|
Attribution | Gets or sets the attribution text for this layer. |
SubDomains | Gets or sets the list of sub-domains that can be used for |
TemplateUri | Gets or sets the URI template for this web tiled layer. |
Methods
Name | Description |
---|---|
GetTileUriAsync(Int32, Int32, Int32, CancellationToken) | This method is not currently supported and always throws a System.NotSupportedException. |
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.1 - 200.6 |
Xamarin.Android | 100.1 - 100.15 |
Xamarin.iOS | 100.1 - 100.15 |
UWP | 100.1 - 200.6 |