com.supermap.realspace.spatialanalyst
类 InterpolationParameter3D

java.lang.Object
  继承者 com.supermap.realspace.spatialanalyst.InterpolationParameter3D
直接已知子类:
InterpolationIDWParameter3D, InterpolationKrigingParameter3D

public abstract class InterpolationParameter3D
extends java.lang.Object

三维插值参数类,该类是各种三维插值分析方法参数类的基类,为三维插值算法提供必要的参数信息。如分析的范围、剖切面高程值集合,栅格数据分辨率、参与运算的点的查找方式、参与运算的点的查找半径及查找的点数等。

InterpolationParameter3D类有两个派生类,距离反比权值插值参数(InterpolationIDWParameter3D)类和克吕金内插法参数(InterpolationKrigingParameter3D)类, 用于为对应的三维插值算法提供必要的参数信息。


方法摘要
 void dispose()
          释放该对象所占用的资源。
 Rectangle2D getBounds()
          返回插值分析的范围,用于确定运行结果的范围。
 int getExpectedCount()
          返回期望参与插值运算的点数。
 int getMaxPointCountForInterpolation()
          返回块查找时,最多参与插值的点数。
 int getMaxPointCountInNode()
          返回块查找时,单个块内最多查找点数。
 double getResolution()
          返回三维插值运算时使用的分辨率。
 SearchMode getSearchMode()
          返回三维插值运算时,查找参与运算点的方式。
 double getSearchRadius()
          返回查找参与运算点的查找半径。
 double[] getSliceAltitudes()
          获取体数据集各剖切面的高程值集合。
abstract  InterpolationAlgorithmType getType()
          返回插值算法类型。
 void setBounds(Rectangle2D rectangle2D)
          设置插值分析的范围,用于确定运行结果的范围。
 void setExpectedCount(int value)
          设置期望参与插值运算的点数。
 void setMaxPointCountForInterpolation(int value)
          设置块查找时,最多参与插值的点数。
 void setMaxPointCountInNode(int value)
          设置块查找时,单个块内最多查找点数。
 void setResolution(double value)
          设置三维插值运算时使用的分辨率。
 void setSearchMode(SearchMode searchMode)
          设置三维插值运算时,查找参与运算点的方式。
 void setSearchRadius(double value)
          设置查找参与运算点的查找半径。
 void setSliceAltitudes(double[] value)
          设置体数据集各剖切面的高程值集合。
 java.lang.String toString()
          返回一个表示插值分析方法参数类实例的字符串。
 
从类 java.lang.Object 继承的方法
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

方法详细信息

getResolution

public double getResolution()
返回三维插值运算时使用的分辨率。

返回:
三维插值运算时使用的分辨率。
默认值:
默认值为 0

setResolution

public void setResolution(double value)
设置三维插值运算时使用的分辨率。该值不能超过待分析数据集的 Bounds 范围的边长。

参数:
value - 三维插值运算时使用的分辨率。

getSearchMode

public SearchMode getSearchMode()
返回三维插值运算时,查找参与运算点的方式。

插值运算因查找方式的不同,需要设置的参数有所不同,详细介绍请参阅 SearchMode 类。

注意:

距离反比权值(Inverse Distance Weighted)插值法中没有提供 QUADTREE 的插值查找方式;

返回:
查找参与运算点的方式。
默认值:
默认值为 KDTREE_FIXED_COUNT

setSearchMode

public void setSearchMode(SearchMode searchMode)
设置三维插值运算时,查找参与运算点的方式。

注意:

距离反比权值(Inverse Distance Weighted)插值法中没有提供块查找方式(QUADTREE);

参数:
searchMode - 查找参与运算点的方式。

getSearchRadius

public double getSearchRadius()
返回查找参与运算点的查找半径。单位与用于插值的点数据集(或记录集所属的数据集)的单位相同。查找半径决定了参与运算点的查找范围,当计算某个位置的未知数值时,会以该位置为圆心,以setSearchRadius()方法设置的值为半径,落在这个范围内的采样点都将参与运算,即该位置的预测值由该范围内采样点的数值决定。

如果设置SearchModeKDTREE_FIXED_COUNT,同时指定查找参与运算点的范围,当查找范围内的点数小于指定的点数时赋为空值,当查找范围内的点数大于指定的点数时,则返回距离插值点最近的指定个数的点进行插值。

返回:
查找的范围。
默认值:
默认值为 0.0,表示使用最大查找半径,即三维点数据集的区域范围对应的体数据立方体的对角线的长度。

setSearchRadius

public void setSearchRadius(double value)
设置查找参与运算点的查找半径。单位与用于插值的点数据集(或记录集所属的数据集)的单位相同。查找半径决定了参与运算点的查找范围,当计算某个位置的未知数值时,会以该位置为圆心,以setSearchRadius()方法设置的值为半径,落在这个范围内的采样点都将参与运算,即该位置的预测值由该范围内采样点的数值决定。

如果设置SearchModeKDTREE_FIXED_COUNT,同时指定查找参与运算点的范围,当查找范围内的点数小于指定的点数时赋为空值,当查找范围内的点数大于指定的点数时,则返回距离插值点最近的指定个数的点进行插值。

参数:
value - 查找的半径。

getMaxPointCountInNode

public int getMaxPointCountInNode()
返回块查找时,单个块内最多查找点数。

当用QuadTree的查找插值点时,才可以设置块内最多点数。即仅对克吕金( Kriging)插值方法有用。有关查找方式的详细信息,请参见SearchMode类。

返回:
单个块内最多查找点数。
默认值:
默认值为50。

setMaxPointCountInNode

public void setMaxPointCountInNode(int value)
设置块查找时,单个块内最多查找点数。注意,该值必须大于零。

当用QuadTree的查找插值点时,才可以设置最多参与插值的点数。即仅对克吕金( Kriging)插值方法有用。有关查找方式的详细信息,请参见SearchMode类。

参数:
value - 单个块内最多查找点数。

getMaxPointCountForInterpolation

public int getMaxPointCountForInterpolation()
返回块查找时,最多参与插值的点数。

返回:
块查找时,最多参与插值的点数。
默认值:
默认值为200。

setMaxPointCountForInterpolation

public void setMaxPointCountForInterpolation(int value)
设置块查找时,最多参与插值的点数。注意,该值必须大于零。

当用QuadTree的查找插值点时,才可以设置最多参与插值的点数。即仅对克吕金( Kriging)插值方法有用。有关查找方式的详细信息,请参见SearchMode类。

参数:
value - 参与插值的最多点数。

getExpectedCount

public int getExpectedCount()
返回期望参与插值运算的点数。

当查找方式为定长查找时,表示期望参与运算的最少样点数;当查找方式为变长查找时,表示期望参与运算的最多样点数。

返回:
期望参与插值运算的点数。
默认值:
默认值为 12。

setExpectedCount

public void setExpectedCount(int value)
设置期望参与插值运算的点数。

当查找方式为定长查找时,表示期望参与运算的最少样点数;当查找方式为变长查找时,表示期望参与运算的最多样点数。

如果设置SearchModeKDTREE_FIXED_RADIUS ,同时指定参与插值运算点的个数,当查找范围内的点数小于指定的点数时赋为空值。

参数:
value - 期望参与插值运算的点数。

getBounds

public Rectangle2D getBounds()
返回插值分析的范围,用于确定运行结果的范围。

返回:
插值分析的范围。
默认值:
默认值为 Rectangle2D.getEMPTY

setBounds

public void setBounds(Rectangle2D rectangle2D)
设置插值分析的范围,用于确定运行结果的范围。

参数:
rectangle2D - 插值分析的范围。
默认值:
默认值为 Rectangle2D.getEMPTY

setSliceAltitudes

public void setSliceAltitudes(double[] value)
设置体数据集各剖切面的高程值集合。必须设置剖切面集合,且剖切面必须大于0。

参数:
value - 体数据集各剖切面的高程值集合。

getSliceAltitudes

public double[] getSliceAltitudes()
获取体数据集各剖切面的高程值集合。

返回:
体数据集各剖切面的高程值集合。

getType

public abstract InterpolationAlgorithmType getType()
返回插值算法类型。

三维插值,SuperMap 中提供两种插值方法,分别是:距离反比权重法(IDW)、克吕金插值方法(Kriging)。选用何种方法进行内插,通常取决于样点数据的分布和要创建表面的类型。

返回:
插值算法的类型。
另请参见:
InterpolationAlgorithmType

toString

public java.lang.String toString()
返回一个表示插值分析方法参数类实例的字符串。

格式为{Bounds=,ExpectedCount=,Resolution=,SearchMode=,SearchRadius=,Type=}。

覆盖:
java.lang.Object 中的 toString
返回:
表示此插值分析方法参数类实例的字符串。

dispose

public void dispose()
释放该对象所占用的资源。当调用该方法之后,此对象不再可用。