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 }); }