com.supermap.analyst.spatialanalyst

类 InterpolationIDWParameter

  • 所有已实现的接口:
    IDisposable


    public class InterpolationIDWParameter
    extends InterpolationParameter

    距离反比权值插值(Inverse Distance Weighted)参数类,继承自 InterpolationParameter 类。通过该类可以为 IDW 插值算法提供必要的参数信息,包括距离权重计算的幂次、查找模式、插值运算时使用的分辨率、查找的范围等。

    示范代码:
    以下代码示范了对点记录集进行插值分析,并且选择距离反比权值插值法进行插值。假设名为 ElevationPoints 数据源中存在一个名称为 elevationpoints 的点数据集,数据集中的“ELEV”字段存储了点数据的高程信息。
     public void interpolateFromRecordset()
     {
        //返回用来进行插值分析的点记录集
        Workspace workspace = new Workspace();
        DatasourceConnectionInfo datasourceConnectionInfo = new DatasourceConnectionInfo("G:\\Data\\ElevationPoints.udb", "ElevationPoints", "");
        Datasource targetDatasource = workspace.getDatasources().open(datasourceConnectionInfo);
        DatasetVector datasetElevPoints = (DatasetVector)targetDatasource.getDatasets().get("elevationpoints");
        QueryParameter queryParam = new QueryParameter();
        queryParam.setAttributeFilter ("CODE=505");
        queryParam.setHasGeometry (true);
        Recordset queryResult = datasetElevPoints.query(queryParam);
    
        //返回一个合法的名称作为结果数据集的的名称
        String resultDatasetName = targetDatasource.getDatasets().getAvailableDatasetName("resultDatasetGrid");
    
        //设置距离反比权值插值参数
        InterpolationIDWParameter interpolationMethodIDWParam = new InterpolationIDWParameter();
        interpolationMethodIDWParam.setExpectedCount ( 5);
        interpolationMethodIDWParam.setBounds( datasetElevPoints.getBounds());
        interpolationMethodIDWParam.setPower( 2);
        interpolationMethodIDWParam.setResolution ( 285);
        interpolationMethodIDWParam.setSearchMode ( SearchMode.KDTREE_FIXED_COUNT);
    
        //调用利用点记录集进行插值分析的方法并返回插值结果
        DatasetGrid resultInterpolationGrid = Interpolator.interpolate(interpolationMethodIDWParam, queryResult, "ELEV", 0.7, targetDatasource, resultDatasetName, PixelFormat.SINGLE);
    
        //释放工作空间占有的资源
        queryResult.dispose();
        workspace.dispose();
     }
     
    • 构造器详细资料

      • InterpolationIDWParameter

        public InterpolationIDWParameter()
        构造一个新的 InterpolationIDWParameter 对象。
      • InterpolationIDWParameter

        public InterpolationIDWParameter(double resolution,
                                         SearchMode mode,
                                         double searchRadius,
                                         int expectedCount)
        根据指定的参数构造一个 InterpolationIDWParameter 的新对象。
        参数:
        resolution - 指定的插值运算时使用的分辨率。
        mode - 指定插值运算时,查找参与运算点的方式。
        searchRadius - 指定的查找范围。
        expectedCount - 指定的需要查找的点数。
      • InterpolationIDWParameter

        public InterpolationIDWParameter(double resolution,
                                         SearchMode mode,
                                         double searchRadius,
                                         int expectedCount,
                                         int power)
        根据指定的参数构造一个 InterpolationIDWParameter 的新对象。
        参数:
        resolution - 指定的插值运算时使用的分辨率。
        mode - 指定插值运算时,查找参与运算点的方式。
        searchRadius - 指定的查找范围。
        expectedCount - 指定的需要查找的点数。
        power - 指定的距离权重计算的幂次。
    • 方法详细资料

      • getPower

        public int getPower()
        返回距离权重计算的幂次。

        幂次值越低,内插结果越平滑,幂次值越高,内插结果细节越详细。此参数应为一个大于0的值。如果不指定此参数,方法缺省将其设置为1。

        返回:
        距离权重计算的幂次。
        默认值:
        默认值为 1。
      • setPower

        public void setPower(int value)
        设置距离权重计算的幂次。

        幂次值越低,内插结果越平滑,幂次值越高,内插结果细节越详细。此参数应为一个大于0的值。如果不指定此参数,方法缺省将其设置为1。

        参数:
        value - 距离权重计算的幂次。
      • getBreakDataset

        public DatasetVector getBreakDataset()
        返回打断线数据集。
        返回:
        返回打断线数据集。
      • setBreakDataset

        public void setBreakDataset(DatasetVector breakDataset)
        设置打断线数据集。
        参数:
        breakDataset - 设置打断线数据集。
      • toString

        public String toString()
        返回一个表示 InterpolationIDWParameter 对象的字符串。
        覆盖:
        toString 在类中 InterpolationParameter
        返回:
        一个表示 InterpolationIDWParameter 对象的字符串。

Copyright © 2021–2024 SuperMap. All rights reserved.