- (Negate) operator

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

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

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

Меняет знак (умножением на -1) значений в каждой ячейке входного растра.

Иллюстрация

Иллюстрация Сменить знак
OutRas = -Raster("InRas1")

Обсуждение

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

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

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

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

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

Параметры

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

Входной растр, для которого будет изменен знак (он будет умножен на -1).

Raster Layer | Constant

Пример кода

Унарный – (Сменить знак) Пример 1 (окно Python)

В данном примере изменяется знак значений ячеек входного растра.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outNegate = - Raster("degs")
outNegate.save("C:/sapyexamples/output/outneg")
Унарный – (Сменить знак), пример 2 (автономный скрипт)

В данном примере изменяется знак значений ячеек входного растра.

# Name: Op_Negate_Ex_02.py
# Description: Changes the sign (multiplies by -1) of the cell values
#              of the input raster 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
inRaster = Raster("degs")

# Execute Negate
outNegate = -(inRaster)

# Save the output 
outNegate.save("C:/sapyexamples/output/outnegate")

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