ThinkGeo.com    |     Documentation    |     Premium Support

Add background color in the tile generator

Hi,

The WPF map control creates tiles with a map background
color dynamically.


The Tile Generator tool uses OSM map layers but does not use/set the map background color, that is why my generated tiles do not have a background
color (a blue water color).


I can try to add a polygon layer with a background color as a
first layer in the Tile Generator GetLayersToCache function, but is there any better/easy
way to set tile background color in the Tile Generator tool?



Thanks,

Gene



Gene,



Yes, there is an easier way. Please navigate to TileCacheGenerator.cs =>  DrawOnBitmap method, then following the codes:



        public void DrawOnBitmap(IEnumerable<layer> layersTmp, GeographyUnit mapUnit, RectangleShape extent, Bitmap bitmap)</layer>
        {
            GeoCanvas canvas = new GdiPlusGeoCanvas();
            canvas.BeginDrawing(bitmap, extent, mapUnit);



            canvas.Clear(GeoBrushes.AliceBlue);
            Collection<layer> layers = LayerProvider.GetLayersToCache();</layer>
            foreach (Layer layer in layers)
            {
                if (!layer.IsOpen)
                {
                    layer.Open();
                }
                layer.Draw(canvas, new Collection<simplecandidate>());</simplecandidate>
            }
            canvas.EndDrawing();
        }



Please let us know if any questions.



Thanks,



Troy

Troy,

Thank you very much! 

The Tile Generator tool sample does not have highlighted  line in the code. Now the generated tiles have a background color.



Gene

Gene, 
  
 Yes, this line doesn’t exist in Generator tool and is added by me. Any way, great to hear it works for you. 
  
 Any other questions, please feel free to let us know. 
  
 Thanks, 
  
 Troy