Beispiel #1
0
        public void AddLayerOsm(Stream stream, Stream cssStream)
        {
            if (stream == null)
            {
                return;
            }

            // Create the MapCSS image source, which is used as image source for areas of the map
            var imageSource = new MapCSSDictionaryImageSource();

            // Load mapcss style interpreter.
            var mapCSSInterpreter = new MapCSSInterpreter(cssStream, imageSource);

            // Load data from pbf file into a memory data source
            var input = new PBFOsmStreamSource(stream);
            //var filter = new OsmStreamFilterBoundingBox(mapView.MapBoundingBox);
            //filter.RegisterSource(input);
            //var source = MemoryDataSource.CreateFromPBFStream(input);
            var source = MemoryDataSource.CreateFrom(input);

            //var source = new MemoryDataSource();

            // If there is allready a layer with map, close it
            if (layerMap != null)
            {
                layerMap.Close();
            }

            tileUrl = "";

            // Add new map layer
            layerMap = map?.AddLayerOsm(source, mapCSSInterpreter);
        }
Beispiel #2
0
        public void AddLayerOsm(Stream stream)
        {
            if (stream == null)
            {
                return;
            }

            // Get assembly
            var assembly = typeof(OsmMap).GetTypeInfo().Assembly;

            // Create the MapCSS image source, which is used as image source for areas of the map
            var imageSource = new MapCSSDictionaryImageSource();

            // Load mapcss style interpreter.
            var mapCSSInterpreter = new MapCSSInterpreter(assembly.GetManifestResourceStream("OsmSharp.Forms.MapCSS.Default.mapcss"), imageSource);

            // Load data from pbf file into a memory data source
            var source = MemoryDataSource.CreateFromPBFStream(stream);

            // If there is allready a layer with map, close it
            if (layerMap != null)
            {
                layerMap.Close();
            }

            tileUrl = "";

            // Add new map layer
            layerMap = map?.AddLayerOsm(source, mapCSSInterpreter);
        }