public GenericRasterTileDownloader( MapControl.WPF.TileSource tileSource, OverlapBorderPresence overlapBordersPresence, Dispatcher uiThreadDispatcher) { tileUriDelegate = tileId => VectorMath.TileSourceGetUriWrapper(tileSource, tileId); tileImageDelegate = tileSource.DirectImage is null ? (tileId => tileSource.GetImage(tileId.X, tileId.Y, tileId.LevelOfDetail - 8)) : (TileImageDelegate)(tileId => tileSource.DirectImage(tileId.X, tileId.Y, tileId.LevelOfDetail - 8)); this.tileSource = tileSource; OverlapBorderPresence = overlapBordersPresence; this.uiThreadDispatcher = uiThreadDispatcher; }
public BitmapImageRequest CreateRequest(TileImageDelegate getImage, NetworkPriority networkPriority, object userToken, BitmapImageRequestCompletedHandler callback) { var bitmapImageRequest = new BitmapImageRequest(getImage, userToken, callback) { NetworkPriority = networkPriority }; lock (pendingRequests) pendingRequests.Add(bitmapImageRequest); thereMayBeWorkToDo.Set(); return(bitmapImageRequest); }
public BitmapImageRequest(TileImageDelegate getImage, object userToken, BitmapImageRequestCompletedHandler callback) { GetImage = getImage; UserToken = userToken; Callback = callback; }