Spatial Analyst 地图代数支持一系列运算符。这些运算符可分为算数、按位、布尔和关系四种类别。下面列出了可用运算符及其类别。
由于 Spatial Analyst 和 Python 中都存在运算符,所以这些运算符会被重载。要区分输入的是栅格还是标量变量,应在输入栅格时使用 Raster 类进行转换: Raster("inRas")。
对于接受两个输入的运算符,如果两个输入都是标量,将使用 Python 运算符对标量进行处理。如果一个输入或两个输入均为栅格(通过使用 Raster 类转换来识别),将使用 Spatial Analyst 运算符并处理栅格中的每个像元。对于那些接受单个输入的运算符,如果是标量,则使用 Python 运算符;如果栅格为输入,则使用 Spatial Analyst 运算符。
地图代数运算符 | 描述 | Spatial Analyst GP 工具 | ArcGIS 9.x 地图代数等效运算符 |
---|---|---|---|
算术 | |||
+(链接) | 加 | + | |
+(链接) | 一元加号 | N/A | N/A |
-(链接) |
减 |
- | |
-(链接) |
一元减号 |
- | |
*(链接) |
乘法 |
* | |
**(链接) |
幂 |
N/A | |
/(链接) |
除 |
/, div | |
//(链接) |
整除 |
N/A |
N/A |
%(链接) | 模 | 求模 | |
按位 | |||
<<(链接) | 按位左移 | << | |
>>(链接) |
按位右移 |
>> | |
布尔 | |||
&(链接) | 布尔与 | &, and | |
~(链接) |
布尔求反 |
^, not | |
|(链接) | 布尔或 | |, or | |
^(链接) |
布尔异或 |
!, xor | |
关系 | |||
==(链接) | 等于 | ==, eq | |
>(链接) |
大于 |
>, gt | |
>=(链接) |
大于或等于 |
>=, ge | |
<(链接) |
小于 |
<, lt | |
<=(链接) |
小于或等于 |
<=, le | |
!=(链接) | 不等于 | ^=, <>, ne | |