I'm using Sharpmap to develop my Windows application. I am able to show OSM using Brutile provider of OSM default server.

This is a Tile Layer of Sharpmap.

new SharpMap.Layers.TileAsyncLayer(new BruTile.Web.OsmTileSource(), "OSM")

But what I want is to use something similar with local OSM Tiles. I know I can create Tiles with gdal2tiles for example, or maybe there is some online resources where I can download OSM tiles for offline use.

Any tips of how I can achieve this? Anyone knows if Brutile has any implementation to this? I mean to obtain the Tiles from a filepath.

2 Answers 2


You can have a closer look at the OSM wiki about Tiles.

But when you plan to do some bulk downloading of OSM based tiles, please pay attention to each Tile usage policy.

Finally you can search the OSM wiki about "brutile" ... no direct article so far, but maybe some hints.


I am using SharpMap and Brutile in a C# winforms project. In the SharpMap code, TileAsyncLayer constructor has a cache directory parameter. namespace SharpMap.Layers public class TileAsyncLayer : TileLayer, ITileAsyncLayer public TileAsyncLayer(ITileSource tileSource, string layerName, Color transparentColor, bool showErrorInTile, string fileCacheDir); I use caching this way...

        TileAsyncLayer osmLayer = useCache ? new TileAsyncLayer(new OsmTileSource(), "TileLayer - OSM", Color.Transparent, true, Path.Combine(_filepath, "Tiles\\OSM")) : new TileAsyncLayer(new OsmTileSource(), "TileLayer - OSM");

If I am caching the tiles, I pass relative path for the tile directory. As expected, keeping cached tiles does speed up map display for commonly view locations or large scale maps (example Map of the state Of Ohio).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.