/// <summary>
        /// initialize a Gdal based raster layer
        /// </summary>
        /// <param name="name">Name of layer</param>
        /// <param name="path">location of image</param>
        public GdalRegularGridRasterLayer(string name, string path)
        {
            base.Name = name;

            var rasterFeatureProvider = new GdalFeatureProvider();

            if (path != null)
            {
                rasterFeatureProvider.Open(path);
            }
            CustomRenderers.Clear();

            CustomRenderers.Add(new RegularGridCoverageRenderer(this)); // add optimized custom gdal renderer

            DataSource = rasterFeatureProvider;
        }
Пример #2
0
        /// <summary>
        /// initialize a Gdal based raster layer
        /// </summary>
        /// <param name="name">Name of layer</param>
        /// <param name="path">location of image</param>
        public GdalRasterLayer(string name, string path)
        {
            base.Name = name;

            CustomRenderers.Clear();
            CustomRenderers.Add(new GdalRenderer(this)); // add optimized custom gdal renderer

            if (path == null)
            {
                return;
            }

            var rasterFeatureProvider = new GdalFeatureProvider();

            rasterFeatureProvider.Open(path);

            DataSource = rasterFeatureProvider;

            FeatureEditor = new FeatureEditor();
        }
Пример #3
0
        public void ReadBinaryRasterFile()
        {
            string fileName = RasterDataPath + "SchematisatieInt.bil";
            var rasterLayer = new RegularGridCoverageLayer();

            var rasterFeatureProvider = new GdalFeatureProvider();
            rasterFeatureProvider.Open(fileName);
            IRegularGridCoverage grid = rasterFeatureProvider.Grid;
            IList<int> values = grid.GetValues<int>();
            Assert.AreEqual(9, values.Count);

            IList<int> values2 = grid.GetValues<int>(
                new VariableValueFilter<double>(grid.X, grid.X.Values[0]),
                new VariableValueFilter<double>(grid.Y, grid.Y.Values[0])
                );
            Assert.AreEqual(1, values2.Count);
            Assert.AreEqual(7, values2[0]);

            //rasterLayer.CustomRenderers.Add(new RegularGridCoverageRenderer()); // add optimized custom gdal renderer
            rasterLayer.DataSource = rasterFeatureProvider;


            IRegularGridCoverage regularGridCoverage = rasterFeatureProvider.Grid;
        }
        public void GenerateThemeForBilFileWithoutLegendFile()
        {
            const string fileName = @"..\..\..\..\..\test-data\DeltaShell\DeltaShell.Plugins.SharpMapGis.Tests\RasterData\SchematisatieUInt.bil";

            RegularGridCoverageLayer rasterLayer = new RegularGridCoverageLayer();
            GdalFeatureProvider rasterFeatureProvider = new GdalFeatureProvider();
            rasterFeatureProvider.Open(fileName);
            rasterLayer.DataSource = rasterFeatureProvider;
            IRegularGridCoverage grid = rasterLayer.Grid;

            ITheme theme = DemisMapControlLegendHelper.ConvertLegendToTheme(fileName, "value", grid);

            Assert.IsTrue(((GradientTheme) theme).Max == 9.0);
            Assert.IsTrue(((GradientTheme) theme).Min == 1.0);

            Assert.IsInstanceOfType(typeof(GradientTheme), theme);
            foreach (IThemeItem themeItem in theme.ThemeItems)
            {
                Assert.IsInstanceOfType(typeof(GradientThemeItem), themeItem);
                Assert.IsInstanceOfType(typeof(VectorStyle), themeItem.Style);
            }
         }