ATan2 (Spatial Analyst)

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

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

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

Вычисляет арктангенс (на основании x,y) значений ячеек растра.

Иллюстрация

Рисунок инструмента ATan2
OutRas = ATan2(InRas1, InRas2)

Использование

  • Инструмент ATan2 конвертирует прямоугольные координаты (x,y) в полярные (r,θ), где r - расстояние от начальной точки и θ - угол между осью x.

    Конвертация ATan2
    Конвертация прямоугольных координат в полярные

    Для вычисления ATan2 используется следующее уравнение: tanθ = y / x (где θ — угол).

    Операция ATan2 обрабатывает все квадранты в прямоугольной матрице (в зависимости от знака).

  • Значения первых входных данных используются как числитель в вычислении тангенса угла (y). Значения вторых входных данных используются как знаменатель в вычислении тангенса угла (x).

  • В математике все тригонометрические функции имеют определенный диапазон корректных входных значений, называемый доменом. Выходные значения каждой функции также имеют определенный диапазон. Для этого инструмента верно следующее:

    • Домен: -∞ < [in_value] < ∞

      Этот домен применяется ко всем двум входным данным.

    • Диапазон: -pi < [out_value] ≤ pi

    Обратите внимание, что -∞ и ∞ представляют наименьшее отрицательное и наибольшее положительное значения, поддерживаемые определенным форматом растра, соответственно.

  • Если оба значения – 0, выходным значением будет значение NoData.

    Если первое входное значение – 0, выходное значение будет равно 0.

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

  • Выходные значения всегда с плавающей точкой, независимо от типа входных данных.

  • Выходные значения этого инструмента – в радианах. Если вместо этого необходимо вычисление в градусах, значения результирующего растра должны быть умножены на коэффициент преобразования радиан в градусы 180/pi или приблизительно 57,296.

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

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

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

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

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

    Если у всех входных данные есть одна переменная, но разные имена, снимите отметку Сопоставить многомерную переменную для среды геообработки (задайте arcpy.env.matchMultidimensionalVariable = False в Python) перед запуском инструмента.

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

  • См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

Параметры

ПодписьОписаниеТип данных
Входной растр или постоянное значение 1

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

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

Raster Layer; Constant
Входной растр или постоянное значение 2

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

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

Raster Layer; Constant

Возвращаемое значение

ПодписьОписаниеТип данных
Выходной растр

Выходной растр.

Значениями является арктангенс угла входных значений.

Raster

ATan2(in_raster_or_constant1, in_raster_or_constant2)
ИмяОписаниеТип данных
in_raster_or_constant1

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

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

Raster Layer; Constant
in_raster_or_constant2

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

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

Raster Layer; Constant

Возвращаемое значение

ИмяОписаниеТип данных
out_raster

Выходной растр.

Значениями является арктангенс угла входных значений.

Raster

Пример кода

ATan2, пример 1 (окно Python)

В этом примере вычисляется обратный тангенс для двух входных растров GRID.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outATan2 = ATan2("degs", "negs")
outATan2.save("C:/sapyexamples/output/outatan2")
ATan2, пример 2 (автономный скрипт)

В этом примере вычисляется обратный тангенс для двух входных растров GRID.

# Name: ATan2_Ex_02.py
# Description: Calculates the inverse tangent of cells based
#              on (y, x) values from two rasters
# 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 = "degs"
inRaster2 = "negs"

# Execute ATan2
outATan2 = ATan2(inRaster1, inRaster2)

# Save the output 
outATan2.save("C:/sapyexamples/output/outatan2.tif")

Информация о лицензиях

  • Basic: Обязательно Spatial Analyst или Image Analyst
  • Standard: Обязательно Spatial Analyst или Image Analyst
  • Advanced: Обязательно Spatial Analyst или Image Analyst

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