麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

ArcGIS Engine 10 开发手册(6-5)使用ArcGIS Engine进行空间插值

在 GIS 的地理空间信息采集过程中,我们对某种地理空间现象或特征进行地理空间测量,都是基于一 种离散的样本测量,利用这些有限的采样点数据,而对研究区域内其他未知区域的特征数据进行地理空间 信息的推理和估计,从而构建一个连续的地理特征表面分布,我们把这种地理空间推理计算和估计的方法 称为地理空间插值。

地理空间插值方法

GIS 中常用的地理空间插值方法主要包括如下几种:

  • 距离加权倒数空间插值法(IDW)
  • 自然临近空间插值法
  • 样条空间插值法
  • 克里格空间插值法
  • 趋势空间插值法

这些地理空间插值方法给我们一种技术手段以供对未知点的推理和估算,其测算结果具有地统计意义,测算结果与样本空间大小及样本空间的分布直接相关,而且这些插值方法在预测估值的时候都有自己的前 提假设,这个假设也就是每一种插值算法的理论前提。ArcGIS Engine 中 空间插值的方法都定义在 IInt erpolationOp 接口中,现在这个接口已经到了 IInterpolationOp3,下面就是 IInterpolationOp3 接口中 定义的方法:

和插值相关的接口

IFeatureClassDescriptor 接口:

IFeatureClassDescriptor 接口被 FeatureClassDescriptor 对象实现,FeatureClassDescriptor 对 象通过指定一个值字段用来来描述插值的时候所需要的一些信息。

IRasterAnalysisEnvironment 接口:

IRasterAnalysisEnvironment 接口定义了插值后生成栅格的大小,范围,Mask 等。

IRasterRadius 接口: 从这个的字面意思就可以看出这个接口是和距离有关的,没错,我们知道一些插值比如 IDW 就是和距

离有关的,而设置距离的一些信息就定义在这个接口中,这个接口被 RasterRadiusClass 类实现。

示例:利用ArcGIS Engine实现IDW差值

代码如下

public IGeoDataset IDW (IFeatureClass _pFeatureClass, string _pFieldName, double _pDistance, double _pCell, int _pPower)

{

  IGeoDataset Geo = _pFeatureClass as IGeoDataset;
  object pExtent = Geo.Extent;

  object o = Type.Missing;

  IFeatureClassDescriptor pFeatureClassDes = new FeatureClassDescriptorClass ();

  pFeatureClassDes.Create (_pFeatureClass, null,_pFieldName);

  IInterpolationOp pInterOp = new RasterInterpolationOpClass ();
  IRasterAnalysisEnvironment pRasterAEnv = pInterOp as

  IRasterAnalysisEnvironment;

  // pRasterAEnv.Mask = Geo;

  pRasterAEnv.SetExtent (esriRasterEnvSettingEnum.esriRasterEnvValue, ref pExtent, ref o);

  object pCellSize = _pCell; //可以根据不同的点图层进行设置

  pRasterAEnv.SetCellSize (esriRasterEnvSettingEnum.esriRasterEnvValue, ref pCellSize);

  IRasterRadius pRasterrad = new RasterRadiusClass ();
  object obj = Type.Missing;
  pRasterrad.SetFixed (_pDistance, ref obj);

  object pBar = Type.Missing;

  IGeoDataset pGeoIDW = pInterOp.IDW (pFeatureClassDes as IGeoDataset, _pPower, pRasterrad, ref pBar);

  return pGeoIDW;

}

ArcGIS Engine 10 开发手册全集

ArcGIS Engine 10 开发手册全集: ArcGIS Engine 10 开发手册

相关阅读

麻辣GIS-Sailor

作者:

GIS爱好者,学GIS,更爱玩GIS。

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

手机阅读
公众号关注
知识星球
手机阅读
麻辣GIS微信公众号关注
最新GIS干货
关注麻辣GIS知识星球
私享圈子

留言板(小编看到第一时间回复)