public void GetTile(MapTileKey key, Action <IMapTile> success, Action <Exception> error) { var tilePosition = key.ToWorldPos(); var parameters = GetParameters(); var url = string.Format(CultureInfo.InvariantCulture.NumberFormat, UrlTemplate, tilePosition.Y, tilePosition.X, key.LevelOfDetail, parameters.UseSecureConnection ? "https" : "http"); if (parameters.MapType.HasValue) { url += "&maptype=" + parameters.MapType.ToString().ToLower(); } if (!string.IsNullOrEmpty(parameters.Key)) { url += "&key=" + parameters.Key; } if (!string.IsNullOrEmpty(parameters.Language)) { url += "&language=" + parameters.Language; } WebRequestHelper.DownloadDataAsync(url, parameters.Timeout, stream => success(new MapTile(key, new ImageInfo(stream, null))), error); }
public void GetTile(MapTileKey key, Action <IMapTile> success, Action <Exception> error) { var p = key.ToWorldPos(); var parameters = GetParameters(); var url = string.Format(CultureInfo.InvariantCulture.NumberFormat, UrlTemplate, parameters.Key, p.Y, p.X, key.LevelOfDetail, parameters.MapType.ToString().ToLower()); if (!string.IsNullOrEmpty(parameters.Language)) { url += "&language=" + parameters.Language; } WebRequestHelper.DownloadDataAsync(url, parameters.Timeout, stream => success(new MapTile(key, stream)), error); }