+ (Addition) operator

Доступно с лицензией Spatial Analyst.

Доступно с лицензией Image Analyst.

Краткая информация

Складывает (суммирует) значения двух растров по принципу ячейка-за-ячейкой.

Иллюстрация

Иллюстрация Плюс
OutRas = Raster("InRas1") + Raster("InRas2")

Обсуждение

При использовании оператора со входным растром на выходе также будет растр. Если же все входные данные являются числами, на выходе также будет число.

Если в выражении используется несколько операторов, их необязательно выполнять слева направо. Оператор с наивысшим значением приоритета будет выполнен первым. Более подробно см. таблицу приоритета операторов в разделе Работа с операторами в Алгебре карт. Порядок выполнения операторов можно изменить с помощью скобок.

Для этого оператора не важен порядок растров во входном списке.

Если оба значения целочисленные, выходные будут также целочисленными. В противном случае на выходе будут получены значения с плавающей точкой.

Другой способ выполнить сложение – a += b, что иным способом может быть записано как a = a + b.

Если оба входных растра являются одноканальными или на входе имеется константа, на выходе получится одноканальный растр.

Если оба входных растра являются многоканальными, оператор будет выполнен для каждого канала, а выходной растр будет многоканальным. Число каналов всех многоканальных растров должно быть одинаковым.

Если один из входных растров является многоканальным, а другие входные данные - константами, оператор выполнится с постоянным значением для каждого канала многоканального входного растра, а выходной растр будет многоканальным.

Если все входные данные являются многомерными растрами с одинаковым количеством переменных, оператор будет выполнен для всех срезов с одинаковым значением измерения, а на выходе будет получен многомерный растр. У переменных во входных данных должны быть одинаковые или общие размерности.

Если у обоих входных данных одна переменная, но разные имена, установите False для среды геообработки matchMultidimensionalVariable, чтобы выполнить операцию.

Если одними из входных данных является многомерный растр, а другие - константой, оператор будет выполнен для всех срезов для всех переменных с постоянным значением, и на выходе будет получен многомерный растр.

Параметры

ОперандОписаниеТип данных
in_raster_or_constant1

Входные данные, к которым значения будут прибавляться.

Если один из наборов входных данных – растр, а другой – скаляр, то создается выходной растр со скаляром прибавленным к каждой ячейке входного растра.

Raster Layer | Constant
in_raster_or_constant2

Входные данные, значения которых будут складываться со значениями первых входных данных.

Если один из наборов входных данных – растр, а другой – скаляр, то создается выходной растр со скаляром, прибавленным к каждой ячейке входного растра.

Raster Layer | Constant

Пример кода

+ (Сложение) Пример 1 (окно Python)

В данном примере складываются два входных растра.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outPlus = Raster("degs") + Raster("negs")
outPlus.save("C:/sapyexamples/output/outplus.img")
+ (Сложение), пример 2 (автономный скрипт)

В данном примере складываются два входных растра.

# Name: Op_Plus_Ex_02.py
# Description: Adds the values of two rasters on a cell-by-cell basis.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster1 = Raster("cost")
inRaster2 = Raster("degs")

# Execute Plus
outPlus = inRaster1 + inRaster2

# Save the output 
outPlus.save("C:/sapyexamples/output/outplus")

Связанные разделы