将自定义栅格运算表达式及相关参数存储为 XML 文件。
命名空间:
SuperMap.Analyst.SpatialAnalyst程序集: SuperMap.Analyst.SpatialAnalyst (in SuperMap.Analyst.SpatialAnalyst)
版本: dll
语法
C# |
---|
public static bool ToXMLFile( string xmlFileName, string expression, GeoRegion userRegion, PixelFormat pixelFormat, bool isZip, bool isIgnoreNoValue ) |
参数
- xmlFileName
- Type: System..::.String
指定的用于存储栅格运算表达式及相关参数的 XML 文件。
- expression
- Type: System..::.String
自定义的栅格运算表达式。
- userRegion
- Type: SuperMap.Data..::.GeoRegion
用户指定的有效计算区域。如果为 null,则表示计算全部区域,如果参与运算的数据集范围不一致,将使用所有数据集的范围的交集作为计算区域。
- pixelFormat
- Type: SuperMap.Data..::.PixelFormat
指定的结果数据集的像素格式。注意,如果指定的像素类型的精度低于参与运算的栅格数据集像素类型的精度,运算结果可能不正确。
- isZip
- Type: System..::.Boolean
是否对结果数据集进行压缩处理。true 表示压缩。压缩编码方式由被压缩的数据集的像素格式决定,二者对应关系可参考 EncodeType 枚举类型。
- isIgnoreNoValue
- Type: System..::.Boolean
是否忽略无值栅格数据。true 表示忽略无值数据,即无值栅格不参与运算。
返回值
一个布尔值,表示读取是否成功,如果读取成功,返回 true,否则返回 false。备注
将自定义的栅格运算表达式及相关参数存储到 XML 文件中,以后需要再次运算时可以通过 ExecuteFromXML 方法直接从该 XML 文件中读取表达式并完成运算,而不必重新编写表达式和设置参数。当然,也可以用来对需要进行相同运算的数据集进行批量处理,但需要注意,表达式中明确指定了参与运算的数据源和数据集的名称,使用时可以根据实际情况修改。
下图为通过该方法生成的存储了运算表达式及参数的 XML 文件,图中标示了每个标签的含义:
注意:
- 如果不指定有效计算区域(userRegion 参数),XML 文件中将不包含<SmXml:SingleSubRegionPoints></SmXml:SingleSubRegionPoints>标签。
- 如果指定的 XML 文件已经存在,将会直接覆盖原来的内容。为避免丢失数据,可在调用该方法前可先判断是否已存在该文件。
示例
请参见 MathAnalyst 类的示例。