栅格计算器的工作原理

需要 Spatial Analyst 许可。

获得 Image Analyst 许可后可用。

栅格计算器用于在工具中创建和执行“地图代数”表达式。与其他地理处理工具一样,栅格计算器工具可以在 ModelBuilder 中使用,从而可以更轻松地在工作中发挥“地图代数”的功用。

注:

“栅格计算器”工具不适合用于脚本环境中,而且不能在标准的 Spatial Analyst ArcPy 模块中使用。要了解关于脚本和“地图代数”的详细信息,请参阅“什么是地图代数?”帮助主题。(位于 Spatial Analyst 扩展模块帮助中)。

栅格计算器工具具有如下的独有优势:

  • 执行单行代数表达式。
  • 使用 ModelBuilder 时,支持在“地图代数”中使用变量。
  • 为一个表达式的三个或更多的输入应用 Spatial Analyst 运算符。
  • 在一个表达式中使用多个 Spatial Analyst 工具。

栅格计算器用于通过多种工具和运算符来执行单行代数表达式。当在一个表达式中使用多种工具或运算符时,该公式的执行速度一般会比分别执行每个运算符或工具的速度要快。

使用栅格计算器工具

工具对话框中有三个主要区域用于创建“地图代数”表达式:栅格、工具和表达式

栅格计算器工具对话框
栅格计算器工具对话框示例

栅格

输入栅格列表识别了可以在“地图代数”表达式中使用的输入。栅格列表将包含“内容”中的图层和使用“添加栅格”按钮添加的数据集。在 ModelBuilder 中使用此工具时,栅格列表还会包含栅格模型变量。

工具

工具列表中,可以方便地选择能在“地图代数”表达式中使用的工具。通过单击列表中的工具,该工具的名称以及括号的左右半边 [()] 将被放置在表达式中指针当前所在的位置。然后必须输入该工具所需的其他输入内容。虽然工具可以放置在表达式的任何位置,但是它应放置在可以生成有效的“地图代数”语法的位置。

通过列表中的运算符,可以将数学运算符(加、除等)和逻辑运算符(大于、等于等)输入表达式。通过选择这些符号,可以将运算符输入到表达式中指针当前所在的位置。

表达式

“地图代数”将要执行的表达式。此表达式必须使用有效的语法输入。要了解有关“地图代数”语法规则的详细信息,请参阅以下部分。

地图代数语言

“地图代数”是一种简单而强大的代数语言,利用它您可以操作所有 Image Analyst 工具、运算符及函数以执行各种地理分析。

栅格计算器中使用的“地图代数”含有语法或规则集,“地图代数”必须遵循这些语法或规则集才能创建有效的表达式。如果不遵循这些规则,创建的表达式可能会无效并且无法执行,或者得不到预期的结果。

“地图代数”不仅可以通过栅格计算器工具来访问,还可以通过使用 Spatial Analyst ArcPy 模块的 Python 脚本来访问。在此工具中使用相同的“地图代数”语法,但以下情况除外:

  • 不必将输出栅格名称或等号 (=) 填入表达式,因为该输出名称已在输出栅格参数中指定。
  • 在使用运算符时,不必将输入栅格转换为栅格对象。

相关主题