Доступно с лицензией Spatial Analyst.
Сводка
Вычисляет для каждой ячейки направление в градусах к соседней ячейке по кратчайшему пути обратно к ближайшему источнику, избегая барьеров.
Использование
Входные данные источников могут быть представлены классом объектов или растром.
Выходные значения основываются на компасных направлениях (90 градусов – это направление на восток, 180 – на юг, 270 – на запад и 360 градусов – на север); значение, равное 0, резервируется для ячеек источников.
Когда входные данные источников – растр, набор ячеек источников состоит из всех ячеек в растре источников, которые имеют действительные значения. Ячейки, имеющие значение NoData, не включаются в набор источников. Нулевое значение рассматривается как истинный источник. Исходный растр можно создать с помощью инструментов извлечения.
Когда входные данные источников представлены классом пространственных объектов, местоположения источников внутренне конвертируются в растр до выполнения анализа.
При использовании данных объекта в качестве входных исходных данных следует особенно тщательно выбирать способ обработки размера выходной ячейки, если его можно охарактеризовать как грубый относительно подробных сведений во входных данных. Процесс внутренней растеризации по умолчанию использует тот же инструмент Тип присвоения значений ячейкам, что и инструмент Объект в растр, который является методом центра ячейки. Это означает, что данные, не расположенные по центру ячейки, не будут включены в промежуточные растеризованные исходные выходные данные, поэтому они не будут представлены в расчетах расстояния. Например, если источником является ряд небольших полигонов (например периметры знаний), которые невелики относительно размера выходной ячейки, возможно, что только некоторые из них попадут по центру выходных растровых ячеек, и, видимо, большинство остальных объекты будут потеряны в анализе.
Во избежание этой ситуации в качестве промежуточного шага можно напрямую растеризовать входные объекты с помощью инструмента Объект в растр и задать параметр Поле. Затем используйте полученные выходные данные в качестве входных для того инструмента расстояний, который вам требуется. Кроме того, можно выбрать небольшой размер ячейки, чтобы получить достаточный объем данных из входных объектов.
Максимальное расстояние задаётся в тех же единицах карты, что и у входных данных источников.
Выходной размер ячейки можно задать как числовым значением, так и получить из существующего набора растровых данных. Если размер ячейки невозможно указать непосредственно как значение параметра, он будет получен из параметра среды Размер ячейки, если он был там задан. Если параметр размера ячейки в инструменте или среде геообработки не был задан, то размер выходной ячейки по умолчанию будет зависит от типа входного набора данных следующим образом:
- Если входной набор данных является растром, то будет использоваться размер ячейки этого растра.
- Если входной набор данных является вектором и задан параметр среды Растр привязки, то будет использоваться размер ячейки растра привязки. Если растр привязки не задан, то размер ячейки будет вычислен как наименьшее значение длины либо ширины экстента растра, поделенное на 250, при этом экстент берется из параметра среды Выходная система координат.
Если размер ячейки указан в виде числа, то инструмент будет использовать это значение для выходного растра.
Если для определения размера ячейки указан другой растр, в параметре будет показан путь к набору растровых данных вместо значения размера ячейки. Размер ячейки этого растра будет использоваться непосредственно в анализе указанная пространственная привязка набора данных будет такой же, как и выходная система координат. Если же пространственная привязка набора данных отличается от выходной пространственной привязки, на будет перепроецирована на основе выбранного Метода проецирования размера ячейки.
Экстент обработки для этого инструмента является Объединение всех входных. Будет обрабатываться совокупный экстент всех входных данных.
Этот инструмент поддерживает параллельную обработку. Если ваш компьютер имеет несколько процессоров или процессор с несколькими ядрами, то его производительность будет более высокой, особенно на больших наборах данных. Раздел справки Параллельная обработка в Spatial Analyst содержит более подробные сведения об этой возможности и способах ее настройки.
При использовании параллельной обработки будут записаны временные данные для управления обрабатываемыми фрагментами данных. Папка temp по умолчанию располагается на диске C: вашего компьютера. Вы можете управлять расположением этой папки, настроив Переменную системной среды с именем TempFolders и указав путь к папке, которая будет использоваться (например, E:\RasterCache). Если у вас права администратора на вашей машине, вы можете также использовать ключ регистрации (например, [HKEY_CURRENT_USER\SOFTWARE\ESRI\Desktop10.7\Raster]).
По умолчанию, этот инструмент будет использовать 50 процентов доступных ядер. Если размер входных данных меньше, чем 5000 на 5000 ячеек, может использоваться меньшее число ядер. Можно задавать число используемых инструментом ядер в среде Коэффициент параллельной обработки.
См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
EucBackDirection(in_source_data, {in_barrier_data}, {maximum_distance}, {cell_size}, {distance_method})
Параметр | Объяснение | Тип данных |
in_source_data | Входные местоположения источников. Это набор растровых или векторных данных, определяющий ячейки или местоположения, до которых для каждой ячейки вычисляется евклидово обратное направление. Для растров входной тип может быть целочисленным или с плавающей точкой. | Raster Layer; Feature Layer |
in_barrier_data (Дополнительный) | Набор данных, определяющий барьеры. Барьеры могут быть определены растром с целочисленными значениями, или со значениями с плавающей точкой, а также векторным слоем. | Raster Layer; Feature Layer |
maximum_distance (Дополнительный) | Пороговое значение, которое не может быть превышено суммарными значениями расстояния. Если суммарное Евклидово расстояние превышает это значение, выходному значению для местоположения ячейки будет присвоено значение NoData. Значение по умолчанию равно расстоянию до границы выходного растра. | Double |
cell_size (Дополнительный) | Размер ячейки выходного растра, который будет создан. Этот параметр можно задать как числовым значением, так и получить из существующего набора растровых данных. Если размер ячейки не был в явном виде задан как значение параметра, будет использоваться значение размера ячейки, указанное в параметрах среды геообработки, если же и оно не указано, будут использоваться дополнительные правила вычисления размера ячейки на основе входных данных. Более подробно см. использование. | Analysis Cell Size |
distance_method (Дополнительный) | Задает, следует ли вычислять расстояние с помощью планарного (плоская земля) или геодезического (эллипсоид) метода.
| String |
Значение отраженного сигнала
Имя | Объяснение | Тип данных |
out_back_direction_raster | Выходной растр обратного евклидова направления. Растр обратного направления содержит рассчитанное направление в градусах. Направление определяет следующую ячейку по кратчайшему пути до ближайшего источника, избегая барьеры. Диапазон значений – от 0 до 360 градусов, где значение 0 резервируется для ячеек источников. Направление прямо на восток (вправо) определяется, как равное 90 градусам; значения увеличиваются по часовой стрелке (180 – на юг; 270 – на запад; и 360 на север). Тип выходного растра – float. | Raster |
Пример кода
EucDirection, пример 1 (окно Python)
В следующем скрипте окна Python показано, как используется инструмент EuclideanBackDirection.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outEucBackDir = EucBackDirection("observers", "in_barriers", 35000, 50,
"GEODESIC")
outEucBackDir.save("c:/sapyexamples/output/eucoutbackdir.tif")
EucDirection, пример 2 (автономный скрипт)
Вычисляет направление в градусах, определяющее положение центра каждой ячейки по отношению к центру ближайшего источника.
# Name: EucBackDirection_Ex_02.py
# Description: Calculates, for each cell, the direction,
# in degrees, to the neighboring cell along
# the shortest path back to the closest
# source while avoiding barriers.
# 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
inSource = "observers.shp"
inBarriers = "rivers.tif"
maxDist = 35000
cellSize = 50
distMethod = "GEODESIC"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute EucDirections
outEucBackDir = EucBackDirection(inSource, inBarriers, maxDist,
cellSize, distMethod)
# Save the output
outEucBackDir.save("c:/sapyexamples/output/eucoutbackdir02.tif")
Параметры среды
Информация о лицензиях
- Basic: Требуется Spatial Analyst
- Standard: Требуется Spatial Analyst
- Advanced: Требуется Spatial Analyst