com.supermap.analyst.spatialanalyst
类 InterpolationIDWParameter
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.data.InternalHandleDisposable
-
- com.supermap.analyst.spatialanalyst.InterpolationParameter
-
- 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()
构造一个新的 InterpolationIDWParameter 对象。InterpolationIDWParameter(double resolution, SearchMode mode, double searchRadius, int expectedCount)
根据指定的参数构造一个 InterpolationIDWParameter 的新对象。InterpolationIDWParameter(double resolution, SearchMode mode, double searchRadius, int expectedCount, int power)
根据指定的参数构造一个 InterpolationIDWParameter 的新对象。
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 DatasetVector
getBreakDataset()
返回打断线数据集。int
getPower()
返回距离权重计算的幂次。InterpolationAlgorithmType
getType()
返回插值算法类型。void
setBreakDataset(DatasetVector breakDataset)
设置打断线数据集。void
setPower(int value)
设置距离权重计算的幂次。void
setSearchMode(SearchMode searchMode)
设置查找方式。String
toString()
返回一个表示 InterpolationIDWParameter 对象的字符串。-
从类继承的方法 com.supermap.analyst.spatialanalyst.InterpolationParameter
dispose, getBounds, getExpectedCount, getMaxPointCountForInterpolation, getMaxPointCountInNode, getResolution, getSearchMode, getSearchRadius, setBounds, setExpectedCount, setMaxPointCountForInterpolation, setMaxPointCountInNode, setResolution, setSearchRadius
-
-
-
-
构造器详细资料
-
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
- 指定的距离权重计算的幂次。
-
-
方法详细资料
-
getType
public InterpolationAlgorithmType getType()
返回插值算法类型。- 指定者:
getType
在类中InterpolationParameter
- 返回:
- 插值算法的类型。
- 另请参阅:
InterpolationAlgorithmType
-
getPower
public int getPower()
返回距离权重计算的幂次。幂次值越低,内插结果越平滑,幂次值越高,内插结果细节越详细。此参数应为一个大于0的值。如果不指定此参数,方法缺省将其设置为1。
- 返回:
- 距离权重计算的幂次。
- 默认值:
- 默认值为 1。
-
setPower
public void setPower(int value)
设置距离权重计算的幂次。幂次值越低,内插结果越平滑,幂次值越高,内插结果细节越详细。此参数应为一个大于0的值。如果不指定此参数,方法缺省将其设置为1。
- 参数:
value
- 距离权重计算的幂次。
-
setSearchMode
public void setSearchMode(SearchMode searchMode)
设置查找方式。请参见SearchMode
类。重写基类的方法,当设置查找方式
SearchMode
为QUADTREE
时抛出异常,表示不支持该查找方式。- 覆盖:
setSearchMode
在类中InterpolationParameter
- 参数:
searchMode
- 查找方式。- 另请参阅:
SearchMode
-
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.