SuperMap.Connector.SpatialAnalyst.Interpolate C# (CSharp) Method

Interpolate() public method

用于对离散的点数据进行插值得到栅格数据集。插值分析可以将有限的采样点数据,通过插值对采样点周围的数值情况进行预测, 从而掌握研究区域内数据的总体分布状况,而使采样的离散点不仅仅反映其所在位置的数值情况,而且可以反映区域的数值分布。

插值分析支持的算法类型:点密度、径向基函数、距离反比权值、普通克吕金、简单克吕金、泛克吕金共6种插值法。

(1)点密度(Density)插值法。插值分析时只需要将parameter参数定义为InterpolationDensityParameter类型,即可进行点密度插值法。

(2)径向基函数(Radial Basis Function)插值法。该方法假设变化是平滑的,它有两个特点:表面必须精确通过数据点;表面必须有最小曲率。该插值在创建有视觉要求的曲线和等高线方面有优势。插值分析时只需要将parameter参数定义为InterpolationRBFParameter类型,即可进行径向基函数插值法。

(3)距离反比权值(Inverse Distance Weighted)插值法。该方法通过计算附近区域离散点群的平均值来估算单元格的值,生成格网数据集。 这是一种简单有效的数据内插方法,运算速度相对较快。距离离散中心越近的点,其估算值越受影响。插值分析时只需要将parameter参数定义为InterpolationIDWParameter类型,即可进行距离反比权值插值法。

(4)克吕金插值法。克吕金插值法又分成3种类型(参考KrigingAlgorithmType):普通克吕金插值法;简单克吕金插值法;泛克吕金插值法。插值分析时需要将parameter参数定义为InterpolationKrigingParameter类型,并且在InterpolationKrigingParameter.Type参数中设置克吕金插值法的类型,即可进行克吕金插值法。

参数 parameter 为空时抛出异常。 服务端处理错误时抛出异常。
public Interpolate ( string pointDataset, InterpolationParameter parameter ) : DatasetSpatialAnalystResult
pointDataset string 进行插值分析的点数据集名称,如SamplesP@Interpolation。
parameter InterpolationParameter 插值参数对象。
return DatasetSpatialAnalystResult
        public DatasetSpatialAnalystResult Interpolate(string pointDataset, InterpolationParameter parameter)
        {
            if (parameter == null)
            {
                throw new ArgumentNullException("parameter", Resources.ArgumentIsNotNull);
            }
            if (pointDataset == null)
            {
                throw new ArgumentNullException("pointDataset", Resources.ArgumentIsNotNull);
            }

            return _spatialAnalystProvier.Interpolate(pointDataset, parameter);
        }