com.supermap.analyst.spatialanalyst
类 ReclassMappingTable

java.lang.Object
  继承者 com.supermap.analyst.spatialanalyst.ReclassMappingTable

public class ReclassMappingTable
extends java.lang.Object

栅格重分级映射表类。提供对源栅格数据集进行单值或范围的重分级,且包含对无值数据和未分级单元格的处理。

重分级映射表,用于说明源数据和结果数据值之间的对应关系。这种对应关系由这几部分内容表达:重分级类型、重分级区间集合、无值和未分级数据的处理。

此外,该类还提供了将重分级映射表数据导出为 XML 字符串及 XML 文件的方法和导入 XML 字符串或文件的方法。当多个输入的栅格数据需要应用相同的分级范围时,可以将其导出为重分级映射表文件,当对后续数据进行分级时,直接导入该重分级映射表文件,进而可以批量处理导入的栅格数据。有关栅格重分级映射表文件的格式和标签含义请参见 toXmlFile 方法。

示例:
请参见 reclass 类的示例。

构造方法摘要
ReclassMappingTable()
          构造一个新的 ReclassMappingTable 对象。
ReclassMappingTable(ReclassMappingTable reclassSegment)
          根据给定的 ReclassMappingTable 对象构造一个与其完全相同的新对象。
 
方法摘要
 void dispose()
          释放 ReclassMappingTable 对象所占用的本地资源。
 boolean fromXml(java.lang.String StrXml)
          将存储在XML格式字符串中的参数值导入到映射表数据中。
 boolean fromXmlFile(java.lang.String xmlFile)
          从已保存的XML格式的映射表文件中导入映射表数据。
 double getChangeMissingValueTo()
          返回不在指定区间或单值内的栅格的指定值。
 double getChangeNoValueTo()
          返回无值数据的指定值。
 ReclassType getReclassType()
          返回栅格重分级类型。
 int getSegmentCount()
          返回重分级的级数。
 ReclassSegment[] getSegments()
          返回重分级区间集合。
 boolean isRetainMissingValue()
          返回源数据集中不在指定区间或单值之外的数据是否保留原值。
 boolean isRetainNoValue()
          返回是否将源数据集中的无值数据保持为无值。
 void setChangeMissingValueTo(double changeMissingValueTo)
          设置不在指定区间或单值内的栅格的指定值。
 void setChangeNoValueTo(double changeNoValueTo)
          设置无值数据的指定值。
 void setReclassType(ReclassType reclassType)
          设置栅格重分级类型。
 void setRetainMissingValue(boolean retainMissingValue)
          设置源数据集中不在指定区间或单值之外的数据是否保留原值。
 void setRetainNoValue(boolean retainNoValue)
          设置是否将源数据集中的无值数据保持为无值。
 void setSegments(ReclassSegment[] segments)
          设置重分级区间集合。
 java.lang.String toXml()
          将映射表数据输出为 XML 字符串。
 boolean toXmlFile(java.lang.String xmlFile)
          将重分级映射表数据存储为XML格式的映射表文件。
 
从类 java.lang.Object 继承的方法
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

ReclassMappingTable

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


ReclassMappingTable

public ReclassMappingTable(ReclassMappingTable reclassSegment)
根据给定的 ReclassMappingTable 对象构造一个与其完全相同的新对象。

参数:
reclassSegment - 给定的栅格重分级映射表对象。
方法详细信息

getSegmentCount

public int getSegmentCount()
返回重分级的级数。

在输入分段点和新值之前,必须设置分级数,否则输入的新值将无效。

返回:
重分级的级数。

getSegments

public ReclassSegment[] getSegments()
返回重分级区间集合。

每一个 ReclassSegment 就是一个区间范围或者是一个旧值和一个新值的对应关系。

返回:
重分级区间集合。

setSegments

public void setSegments(ReclassSegment[] segments)
设置重分级区间集合。

参数:
segments - 重分级区间集合。

getReclassType

public ReclassType getReclassType()
返回栅格重分级类型。

返回:
栅格重分级类型。
默认值:
默认值为 UNIQUE

setReclassType

public void setReclassType(ReclassType reclassType)
设置栅格重分级类型。

参数:
reclassType - 栅格重分级类型。

isRetainMissingValue

public boolean isRetainMissingValue()
返回源数据集中不在指定区间或单值之外的数据是否保留原值。

返回:
源数据集中不在指定区间或单值之外的数据是否保留原值。

setRetainMissingValue

public void setRetainMissingValue(boolean retainMissingValue)
设置源数据集中不在指定区间或单值之外的数据是否保留原值。

参数:
retainMissingValue - 源数据集中不在指定区间或单值之外的数据是否保留原值。

getChangeMissingValueTo

public double getChangeMissingValueTo()
返回不在指定区间或单值内的栅格的指定值。

返回:
不在指定区间或单值内的栅格的指定值。

setChangeMissingValueTo

public void setChangeMissingValueTo(double changeMissingValueTo)
设置不在指定区间或单值内的栅格的指定值。

如果 setRetainNoValue() 设置为 true,则改设置无效。

参数:
changeMissingValueTo - 不在指定区间或单值内的栅格的指定值。

isRetainNoValue

public boolean isRetainNoValue()
返回是否将源数据集中的无值数据保持为无值。

返回:
是否保留源数据集中不在指定区间或单值内的栅格取值。

setRetainNoValue

public void setRetainNoValue(boolean retainNoValue)
设置是否将源数据集中的无值数据保持为无值。

当 setRetainNoValue 方法设置为 true 时,表示保持源数据集中的无值数据为无值;当 setRetainNoValue 方法设置为 false 时,表示将源数据集中的无值数据设置为指定的值(ReclassMappingTable.setChangeNoValueTo())。

参数:
retainNoValue - 是否保留源数据集中不在指定区间或单值内的栅格取值。

getChangeNoValueTo

public double getChangeNoValueTo()
返回无值数据的指定值。

返回:
无值数据的指定值。

setChangeNoValueTo

public void setChangeNoValueTo(double changeNoValueTo)
设置无值数据的指定值。

setRetainNoValue() 设置为 false 时,该设置有效;否则,无效。

参数:
changeNoValueTo - 无值数据的指定值。

toXml

public java.lang.String toXml()
将映射表数据输出为 XML 字符串。

返回:
映射表数据的 XML 字符串。

toXmlFile

public boolean toXmlFile(java.lang.String xmlFile)
将重分级映射表数据存储为XML格式的映射表文件。

该方法用于将对重分级映射表对象的参数设置写入一个 XML 文件,称为栅格重分级映射表文件,其后缀名为 .xml,下面是一个栅格重分级映射表文件的例子:

重分级映射表文件中各标签的含义如下:

导出为 XML 文件后,当其他栅格数据需要应用相同的分级范围时,可以使用 fromXmlFile 方法导入重分级映射表数据。

参数:
xmlFile - 指定的 XML 格式的映射表文件名称。
返回:
一个布尔值,表示存储是否成功,如果存储成功,返回 true,否则返回 false。

fromXmlFile

public boolean fromXmlFile(java.lang.String xmlFile)
从已保存的XML格式的映射表文件中导入映射表数据。

有关栅格重分级映射表文件的格式和标签含义请参见 toXmlFile 方法。

参数:
xmlFile - 指定的 XML 格式的映射表文件。
返回:
一个布尔值,表示导入是否成功,如果导入成功,返回 true,否则返回 false。

fromXml

public boolean fromXml(java.lang.String StrXml)
将存储在XML格式字符串中的参数值导入到映射表数据中。

参数:
StrXml - 指定的XML格式字符串。
返回:
一个布尔值,表示导入是否成功,如果导入成功,返回 true,否则返回 false。

dispose

public void dispose()
释放 ReclassMappingTable 对象所占用的本地资源。