Class GenericTileProvider
A class used to obtain map tiles from any tile server compliant with Web Map Tile Service protocol.
Inherited Members
Namespace: Telerik.Reporting
Assembly: Telerik.Reporting.dll
Syntax
public class GenericTileProvider : TileProvider, ITileProvider
Remarks
By default, the GenericTileProvider is initialized using the MapQuest tile server properties.
Examples
The following example demonstrates how to initialize a GenericTileProvider instance:
public void HowToInitializeGenericTileProvider()
{
//Creating the GenericTileProvider instance
Telerik.Reporting.GenericTileProvider genericTileProvider1 = new Telerik.Reporting.GenericTileProvider();
//Setting the attribution text that will be shown at the bottom right corner of the map control.
genericTileProvider1.Attribution = "Tiles courtesy of MapQuest";
//Setting the URL to the image file that will be used to download the tile provider logo, if required by the provider's usage policy
genericTileProvider1.LogoUrl = "http://developer.mapquest.com/content/osm/mq_logo.png";
//Specifying the URL template that will be used to get the tiles from the tile server.
genericTileProvider1.UrlTemplate = "http://{subdomain}.mqcdn.com/tiles/1.0.0/map/{zoom}/{x}/{y}.jpg";
//Adding the subdomains used to distribute the tile requests evenly. They will replace the {subdomain} tag in the UrlTemplate.
genericTileProvider1.UrlSubdomains.Add("otile1");
genericTileProvider1.UrlSubdomains.Add("otile2");
genericTileProvider1.UrlSubdomains.Add("otile3");
genericTileProvider1.UrlSubdomains.Add("otile4");
//Assigning the tile provider to the map instance
this.map.TileProvider = genericTileProvider1;
}
Public Sub HowToInitializeGenericTileProvider()
'Creating the GenericTileProvider instance
Dim genericTileProvider1 As New Telerik.Reporting.GenericTileProvider()
'Setting the attribution text that will be shown at the bottom right corner of the map control.
genericTileProvider1.Attribution = "Tiles courtesy of MapQuest"
'Setting the URL to the image file that will be used to download the tile provider logo, if required by the provider's usage policy
genericTileProvider1.LogoUrl = "http://developer.mapquest.com/content/osm/mq_logo.png"
'Specifying the URL template that will be used to get the tiles from the tile server.
genericTileProvider1.UrlTemplate = "http://{subdomain}.mqcdn.com/tiles/1.0.0/map/{zoom}/{x}/{y}.jpg"
'Adding the subdomains used to distribute the tile requests evenly. They will replace the {subdomain} tag in the UrlTemplate.
genericTileProvider1.UrlSubdomains.Add("otile1")
genericTileProvider1.UrlSubdomains.Add("otile2")
genericTileProvider1.UrlSubdomains.Add("otile3")
genericTileProvider1.UrlSubdomains.Add("otile4")
'Assigning the tile provider to the map instance
Me.map.TileProvider = genericTileProvider1
Constructors
GenericTileProvider()
Declaration
public GenericTileProvider()
Properties
Attribution
Gets or sets the Attribution property must be set manually according to the tile provider usage policy. This text will be displayed in the lower right corner of the map area.
Declaration
public string Attribution { get; set; }
Property Value
System.String
|
LogoUrl
Gets or sets the LogoUrl property denotes the URL used to download the tile provider logo, if required by the provider's usage policy. In case the URL points to a valid image, it will be displayed in the lower left corner of the map area.
Declaration
public string LogoUrl { get; set; }
Property Value
System.String
|
UrlSubdomains
Gets a collection of subdomains that will replace the {subdomain} tag in the UrlTemplate. When more than one subdomain is specified, the tile requests will be distributed evenly among the subdomains.
Declaration
public Collection<string> UrlSubdomains { get; }
Property Value
System.Collections.ObjectModel.Collection<System.String>
|
Remarks
For example, for MapQuest Tile server the subdomains are:
UrlTemplate
Gets or sets a templated URL that will be used to fetch the tiles from the tile provider. Valid template patterns are {subdomain}, {x}, {y}, {zoom}.
Declaration
public string UrlTemplate { get; set; }
Property Value
System.String
|
Remarks
The UrlTemplate have the following format:
The {subdomain} tag marks the place where a subdomain from the UrlSubdomains collection would be placed. This tag is not mandatory, since the selected tile provider may not offer more than one subdomain.
The {zoom} tag will be replaced by the calculated zoom level (level of details) of the current tile set.
The {x} and {y} tags are used as a placeholders for the tile position.
UserAgent
Gets or sets the UserAgent header value that will be used when sending requests to the tile provider servers.
Declaration
public string UserAgent { get; set; }
Property Value
System.String
|