private void GenerateTile(BackgroundWorker worker, int zoomLevel, int tileX, int tileY) { string quadKey = BingMapsTileSystem.TileXYToQuadKey(tileX, tileY, zoomLevel); if (this.IsParentTileEmpty(quadKey)) { Interlocked.Increment(ref _numTilesSkipped); } else { BingTileQuery query = this.CreateQuery(quadKey, _tableName, enDiskCacheMode.ReadWrite); Bitmap bmp = _svc.GetImage(query); bool isEmpty = bmp.Tag != null; if (isEmpty) { _emptyQuadKeys.Add(quadKey); Interlocked.Increment(ref _numTilesEmpty); } else { //_rasterFS.SaveTileBitmap(bmp, ImageFormat.Png, zoomLevel, tileX, tileY); //bmp.Dispose(); Interlocked.Increment(ref _numTiles); } } }
public string GetTileFilePath(int zoomLevel, int tileX, int tileY) { string quadKey = BingMapsTileSystem.TileXYToQuadKey(tileX, tileY, zoomLevel); return(Path.Combine(_outputDir, _tableName + "-" + zoomLevel.ToString(), tileX.ToString(), tileY.ToString() + ".png")); }