Example #1
0
        public void CloneFunctionStoredInGdalFunctionStore()
        {
            var path = TestHelper.GetCurrentMethodName() + ".tif";

            var store = new GdalFunctionStore();

            store.CreateNew(path);

            const int deltaX = 1;
            const int deltaY = 10;
            var       grid   = new RegularGridCoverage(2, 2, deltaX, deltaY);

            grid.SetValues(new[] { 1, 2, 3, 4 });

            store.Functions.Add(grid);

            // create grid clone and check if function and cloned store are correct
            var clonedGrid = (RegularGridCoverage)grid.Clone();

            var clonedStore = (GdalFunctionStore)clonedGrid.Store;

            clonedStore.Functions.Count
            .Should().Be.EqualTo(4);

            clonedStore.Path
            .Should().Be.EqualTo(path);

            clonedGrid.GetValues <double>()
            .Should().Have.SameSequenceAs(new double[] { 1, 2, 3, 4 });
        }
        public void CloneTimeDependent()
        {
            var t1 = DateTime.Now;
            var t2 = t1.AddDays(1);

            IRegularGridCoverage coverage = new RegularGridCoverage(2, 2, 10, 20)
            {
                IsTimeDependent = true
            };

            coverage.SetValues(new double[] { 1, 2, 3, 4 }, new VariableValueFilter <DateTime>(coverage.Time, t1));
            coverage.SetValues(new double[] { 10, 20, 30, 40 }, new VariableValueFilter <DateTime>(coverage.Time, t2));

            var clonedCoverage = (IRegularGridCoverage)coverage.Clone();

            Assert.AreEqual(clonedCoverage.Time.Values.Count, coverage.Time.Values.Count);
        }
        public void Clone()
        {
            IRegularGridCoverage coverage = new RegularGridCoverage(2, 3, 10, 20, 5, 60);

            coverage.Components[0].NoDataValues.Add(-1.0d);
            coverage.Components[0].DefaultValue = 100;
            coverage.Components[0].Name         = "values";
            coverage.Components[0].Unit         = new Unit("meter", "m");

            var clonedCoverage = (IRegularGridCoverage)coverage.Clone();

            Assert.AreEqual(2, clonedCoverage.SizeX);
            Assert.AreEqual(3, clonedCoverage.SizeY);
            Assert.AreEqual(10, clonedCoverage.DeltaX);
            Assert.AreEqual(20, clonedCoverage.DeltaY);
            Assert.AreEqual(coverage.Components[0].Name, clonedCoverage.Components[0].Name);
            Assert.AreEqual(1, clonedCoverage.Components[0].NoDataValues.Count);
            Assert.AreEqual(100, clonedCoverage.Components[0].DefaultValue);
            Assert.AreEqual("meter", clonedCoverage.Components[0].Unit.Name);
            Assert.AreEqual(5, clonedCoverage.Origin.X);
            Assert.AreEqual(60, clonedCoverage.Origin.Y);
        }
        public void CloneTimeDependent()
        {
            var t1 = DateTime.Now;
            var t2 = t1.AddDays(1);

            IRegularGridCoverage coverage = new RegularGridCoverage(2, 2, 10, 20) {IsTimeDependent = true};
            coverage.SetValues(new double[] {1, 2, 3, 4}, new VariableValueFilter<DateTime>(coverage.Time, t1));
            coverage.SetValues(new double[] { 10, 20, 30, 40 }, new VariableValueFilter<DateTime>(coverage.Time, t2));

            var clonedCoverage = (IRegularGridCoverage) coverage.Clone();

            Assert.AreEqual(clonedCoverage.Time.Values.Count, coverage.Time.Values.Count);
        }
        public void Clone()
        {
            IRegularGridCoverage coverage = new RegularGridCoverage(2, 3, 10, 20, 5, 60);
            coverage.Components[0].NoDataValues.Add(-1.0d);
            coverage.Components[0].DefaultValue = 100;
            coverage.Components[0].Name = "values";
            coverage.Components[0].Unit = new Unit("meter", "m");

            var clonedCoverage = (IRegularGridCoverage) coverage.Clone();

            Assert.AreEqual(2, clonedCoverage.SizeX);
            Assert.AreEqual(3, clonedCoverage.SizeY);
            Assert.AreEqual(10, clonedCoverage.DeltaX);
            Assert.AreEqual(20, clonedCoverage.DeltaY);
            Assert.AreEqual(coverage.Components[0].Name, clonedCoverage.Components[0].Name);
            Assert.AreEqual(1, clonedCoverage.Components[0].NoDataValues.Count);
            Assert.AreEqual(100, clonedCoverage.Components[0].DefaultValue);
            Assert.AreEqual("meter", clonedCoverage.Components[0].Unit.Name);
            Assert.AreEqual(5, clonedCoverage.Origin.X);
            Assert.AreEqual(60, clonedCoverage.Origin.Y);
        }
        public void CloneFunctionStoredInGdalFunctionStore()
        {
            var path = TestHelper.GetCurrentMethodName() + ".tif";

            var store = new GdalFunctionStore();
            store.CreateNew(path);

            const int deltaX = 1;
            const int deltaY = 10;
            var grid = new RegularGridCoverage(2, 2, deltaX, deltaY);
            grid.SetValues(new[] { 1, 2, 3, 4 });

            store.Functions.Add(grid);

            // create grid clone and check if function and cloned store are correct
            var clonedGrid = (RegularGridCoverage)grid.Clone();

            var clonedStore = (GdalFunctionStore)clonedGrid.Store;

            clonedStore.Functions.Count
                .Should().Be.EqualTo(4);

            clonedStore.Path
                .Should().Be.EqualTo(path);

            clonedGrid.GetValues<double>()
                .Should().Have.SameSequenceAs(new double[] { 1, 2, 3, 4 });
        }