//this can be used in the case of interanet network without internet connection. samples: //this.AddProvider(TileMapProviderFactory.CreateInteranetProvider("localGoogle", "roadMap", t => $@"http://v-gisserver2/Google/Road/{t.ZoomLevel}/gm_{t.ColumnNumber}_{t.RowNumber}_{t.ZoomLevel}.png")); // this.AddProvider(TileMapProviderFactory.CreateInteranetProvider("localGoogle", "terrainMap", t => $@"http://v-gisserver2/Google/TerrainWithRoad/{t.ZoomLevel}/gtr_{t.ColumnNumber}_{t.RowNumber}_{t.ZoomLevel}.jpg")); // this.AddProvider(TileMapProviderFactory.CreateInteranetProvider("localGoogle", "satelliteMap", t => $@"http://v-gisserver2/Google/Satellite/{t.ZoomLevel}/gs_{t.ColumnNumber}_{t.RowNumber}_{t.ZoomLevel}.jpg")); // this.AddProvider(TileMapProviderFactory.CreateInteranetProvider("localGoogle", "hybridMap", t => $@"http://v-gisserver2/Google/Satellite/{t.ZoomLevel}/gs_{t.ColumnNumber}_{t.RowNumber}_{t.ZoomLevel}.jpg")); public static TileMapProvider CreateInteranetProvider(string providerName, string subTitle, Func <TileInfo, string> interanetUrlFunc) { TileMapProvider result = new TileMapProvider(providerName, subTitle, interanetUrlFunc, null) { RequireInternetConnection = false }; return(result); }
public TileServiceLayer(TileServices.TileMapProvider mapProvider, Func <TileInfo, string> getFileName = null) { //this.Provider = TileServices.MapProviderType.Custom; this._cache = new TileServices.TileCacheAddress(mapProvider.Provider.EnglishTitle, mapProvider.MapType.EnglishTitle, getFileName); this.VisualParameters = new VisualParameters(System.Windows.Media.Colors.Transparent); this._mapProvider = mapProvider; }