常用运算符
使用说明
SuperMap 提供的常用运算符包括基本的算术运算符、关系运算符和逻辑运算符三类。
常用的运算符说明如下:
算术运算
常用的算术运算包括加法(+)、减法(-)、乘法(*)和除法(/),下表将详细介绍各种运算方法在进行栅格代数运算时是怎样使用的。
运算类型 | 说明 | 图示 |
加法 | 栅格代数运算中的加法,是将两个输入栅格数据集中的像元值逐个像元相加的过程。 | |
减法 | 栅格代数运算中的减法,用于两个栅格数据集相减,即逐个像元地从第一个栅格数据集中的像元值中减去第二个数据集中相应位置的像元值。
使用减法运算时,输入栅格数据集的先后顺序很重要。若顺序不同,其结果通常也是不同的。 |
|
乘法 | 栅格代数运算中的乘法,是将两个输入栅格数据集中的栅格值逐个像元地相乘的过程。 | |
除法 | 栅格代数运算中的除法,是将两个输入栅格数据集中的栅格值逐个像元地相除的过程。 |
关系运算
常用的关系运算包括大于(>)、小于(<)、等于(=)、不等于(≠)、大于等于(≥)、小于等于(≤),下表将详细介绍各种运算方法在进行栅格代数运算时是怎样使用的。
运算类型 | 说明 |
大于 | 栅格代数运算中的大于,是将输入数据集1中大于输入数据集2的像元值输出的过程。 |
小于 | 栅格代数运算中的小于,是将输入数据集1中小于输入数据集2的像元值输出的过程。 |
等于 | 栅格代数运算中的等于,是将输入数据集1中与输入数据集2中相等像元值输出的过程。 |
不等于 | 栅格代数运算中的不等于,是将两个输入栅格数据集中不相等的栅格值像元逐个输出的过程。 |
大于等于 | 栅格代数运算中的大于等于,是将输入数据集1中大于等于输入数据集2的像元值输出的过程。 |
小于等于 | 栅格代数运算中的小于等于,是将输入数据集1中小于等于输入数据集2的像元值输出的过程。 |
逻辑运算
逻辑运算又称布尔运算,对输入栅格数据集中的像元值进行"真"或"假"的条件判断,并以二进制(1和0)的形式输出。其运算结果用1或0表示,1在逻辑上代表"真",即满足代数运算表达式要求的栅格像元;0在逻辑上代表"假",即不满足代数运算表达式要求的栅格像元。
常用的逻辑运算包括 And(与)、Or(或)、Not(非)和 Xor(异或),下面将详细介绍各逻辑运算方法。
运算类型 | 说明 |
And(与) | 表示逻辑“与”,在表达式对话框中用 & 表示。当且仅当栅格数据集的像元值同时满足两个代数运算表达式时,该像元值为真,并赋值为1,否则为假,赋值为0。 |
Or(或) | 表示逻辑“或”,在表达式对话框中用 | 表示。当栅格数据集的像元值至少满足两个代数运算表达式中的其中一个时,该像元值为真,并赋值为1;若栅格数据集的像元值均不满足这两个代数运算表达式,该像元值为假,赋值为0。 |
Not(非) | 表示逻辑“非”,在表达式对话框中用 Not( ) 表示。当栅格数据集的像元值不满足所列代数运算表达式时,该像元值为真,并赋值为1,否则为假,赋值为0。 |
Not(非) | 表示逻辑“异或”,在表达式对话框中用 ^ 表示。当且仅当栅格数据集的像元值只满足两个代数运算表达式中的其中一个时,该像元值为真,并赋值为1;若栅格数据集的像元值同时满足(或同时不满足)这两个代数运算表达式时,该像元值为假,并赋值为0。 |