public void Interpolate_UniversalKriging() { string pointDataset = "SamplesP@Interpolation"; InterpolationKrigingParameter param = new InterpolationKrigingParameter(); param.PixelFormat = PixelFormat.BIT16; param.ZValueFieldName = "AVG_TMP"; param.ZValueScale = 1; param.Resolution = 3000; param.OutputDatasetName = "interpolateUniversalKriging"; param.OutputDatasourceName = "Interpolation"; param.SearchRadius = 0; param.Angle = 0; param.Nugget = 0; param.Range = 0; param.Sill = 0; param.VariogramMode = VariogramMode.SPHERICAL; param.SearchMode = SearchMode.KDTREE_FIXED_RADIUS; param.SearchRadius = 0; param.Exponent = Exponent.EXP1;//泛克吕金插值法参数 param.Type = KrigingAlgorithmType.UniversalKriging; string serviceUrl = string.Format("http://{0}:8090/iserver/services/spatialanalyst-sample/restjsr", ip); SpatialAnalyst spatialAnalyst = new SpatialAnalyst(serviceUrl); DatasetSpatialAnalystResult actualResult = spatialAnalyst.Interpolate(pointDataset, param); Assert.IsTrue(actualResult.Succeed); //查询生成的栅格数据集信息 string[] names = actualResult.Dataset.Split(new char[1] { '@' }, 3); string[] datasetNames = new string[1] { names[1] + ":" + names[0] }; DatasetGridInfo datainfo = (DatasetGridInfo)spatialAnalyst.GetDatasetInfo(names[1], names[0]); Assert.AreEqual(DatasetType.GRID, datainfo.Type); Assert.AreEqual(PixelFormat.BIT16, datainfo.PixelFormat); //删除生成的栅格数据集 string dataUrl = string.Format("http://{0}:8090/iserver/services/data-sample/rest", ip); Data data = new Data(dataUrl); bool deleteResult = data.DeleteDataset(names[1], names[0]); Assert.IsTrue(deleteResult); }
public void Interpolate_PointDatasetError() { try { string pointDataset = "SamplesP99@Interpolation"; InterpolationKrigingParameter param = new InterpolationKrigingParameter(); param.PixelFormat = PixelFormat.BIT16; param.ZValueFieldName = "AVG_TMP"; param.ZValueScale = 1; param.Resolution = 3000; param.OutputDatasetName = "interpolateUniversalKriging"; param.OutputDatasourceName = "Interpolation"; param.SearchRadius = 0; param.Angle = 0; param.Nugget = 0; param.Range = 0; param.Sill = 0; param.VariogramMode = VariogramMode.SPHERICAL; param.SearchMode = SearchMode.KDTREE_FIXED_RADIUS; param.SearchRadius = 0; param.Exponent = Exponent.EXP1;//泛克吕金插值法参数 param.Type = KrigingAlgorithmType.UniversalKriging; string serviceUrl = string.Format("http://{0}:8090/iserver/services/spatialanalyst-sample/restjsr", ip); SpatialAnalyst spatialAnalyst = new SpatialAnalyst(serviceUrl); DatasetSpatialAnalystResult actualResult = spatialAnalyst.Interpolate(pointDataset, param); Assert.IsTrue(actualResult.Succeed); } catch (Exception e) { Assert.AreEqual("数据集SamplesP99@Interpolation不存在", e.Message); } }
/// <summary> /// 拷贝构造函数。 /// </summary> public InterpolationKrigingParameter(InterpolationKrigingParameter param) : base(param) { this.Angle = param.Angle; this.Nugget = param.Nugget; this.Range = param.Range; this.Sill = param.Sill; this.Mean = param.Mean; this.VariogramMode = param.VariogramMode; this.Exponent = param.Exponent; }