Оптимальный путь как линия (Spatial Analyst)

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

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

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

Более подробно о соединении местоположений оптимальными путями

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

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

  • Когда входные данные объектов назначений (адресатов) представлены растром, набор ячеек адресатов состоит из всех ячеек значения параметра Входной растр или в векторные данные объектов назначения, которые имеют действительные значения. Ячейки, имеющие значение NoData, не включаются в набор источников. Нулевое значение рассматривается как истинный адресат. Растр объектов назначения может быть создан с использованием инструментов извлечения.

  • При использовании данных полигонального объекта в качестве входных назначений объекта следует особенно тщательно выбирать способ обработки размера выходной ячейки, если его можно охарактеризовать как грубый относительно подробных сведений во входных данных. Применяется внутренний процесс растеризации с помощью инструмента Полигон в растр, с настройкой по умолчанию для Метода присвоения значений ячейкам Центра ячейки. Это означает, что данные, не расположенные по центру ячейки, не будут включены в промежуточные растеризованные выходные данные назначения, поэтому не будут представлены в расчётах расстояния. Так, если назначением является ряд небольших полигонов, например периметры знаний, которые невелики относительно размеру выходной ячейки, возможно, что только некоторые из них попадут по центру выходных растровых ячеек, и, видимо, большинство остальных объекты будут потеряны в анализе.

    Во избежание этой ситуации в качестве промежуточного шага можно напрямую растеризовать входные объекты с помощью инструмента Объект в растр и задать параметр Поле. Затем используйте полученные выходные данные в качестве входных для того инструмента расстояний, который вам требуется. Кроме того, можно выбрать небольшой размер ячейки, чтобы получить достаточный объем данных из входных объектов.

  • Перед созданием оптимального пути обычно используется один из следующих инструментов для создания растра накопления расстояния и растра обратного направления: Накопление расстояния или Распределение по расстоянию. Это необходимые входные данные для создания оптимального пути.

  • Оптимальный созданный путь может быть путем потока, основанным на направлении потока D8. Чтобы создать оптимальный путь таким образом, укажите растр направления потока D8 в качестве входного растра для Входного растра обратного направления или направления стока. Вам также нужно указать Входной растр накопленного расстояния. Если параметр Создать сетевые пути не активирован, для задания пути Входной растр накопленного расстояния не используется. Поэтому при использовании как константного растра, так и цифровой модели рельефа (ЦМР) путь будет одинаковым; меняется только атрибутивное значение в вашем пути. Однако если параметр Создать сетевые пути включен, Входной растр накопленного расстояния должен быть Выходным растром суммарного стока. Изучите инструмент Направление стока для получения информации о растрах направления потока D8 и инструменте Суммарный сток для создания растра суммарного стока.

  • Выходной полилинейный объект включает поле с именем DestID и поле с именем PathCost. Поле DestID определяет пункт назначения, к которому ведет каждая линия. В поле PathCost отображается общая совокупная стоимость каждого пути. Если выходные данные записываются в файловую базу геоданных, в них содержится поле shape_length, где хранится общая длина пути с наименьшей стоимостью.

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

Параметры

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

Целочисленный растр или объект (точка, линия или полигон), определяющий местоположения, от которых будет определяться оптимальный путь до источника с наименьшей стоимостью.

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

Raster Layer; Feature Layer
Входной растр накопленного расстояния

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

Растр накопления расстояния обычно создается с помощью инструментов Накопление расстояния или Распределение по расстоянию. Каждая ячейка в растре накопления расстояния представляет минимальное суммарное стоимостное расстояние по поверхности от каждой ячейки до набора исходных ячеек.

Raster Layer
Входной растр обратного направления или направления стока

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

Диапазон значений - от 0 до 360 градусов, где значение 0 резервируется для ячеек источников. Направление прямо на восток (вправо) определяется, как равное 90 градусам; значения увеличиваются по часовой стрелке (180 - на юг; 270 - на запад; и 360 на север).

Raster Layer
Выходной оптимальный путь как объект

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

Feature Class
Поле назначения
(Дополнительный)

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

Field
Тип пути
(Дополнительный)

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

  • Каждая зонаВ выходном растре определяется и сохраняется маршрут с наименьшей стоимостью перемещения для каждой зоны входных данных объектов назначения. С этой опцией путь с наименьшей стоимостью для каждой зоны начинается в ячейке с наименьшим весом стоимостного расстояния в зоне.
  • Один наилучшийДля всех ячеек на входных данных адресатов путь с наименьшей стоимостью перемещения вычисляется из ячейки, лежащей на маршруте с наименьшей стоимостью перемещения до ячеек источников и имеющей минимальное значение стоимости.
  • Каждая ячейкаНа выходном растре определяется и сохраняется маршрут с наименьшей стоимостью перемещения для каждой ячейки, имеющей действительные значения на входных данных объектов назначения. С этой опцией каждая ячейка во входных данных назначения рассматривается по отдельности, и путь с наименьшей стоимостью определяется для каждой ячейки.
String
Создать сетевые пути
(Дополнительный)

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

  • Не отмечено - вычисляются полные пути от назначений к источникам, которые могут быть перекрывающимися. Это значение по умолчанию
  • Отмечено - вычисляются неперекрывающиеся сетевые пути.
Boolean

OptimalPathAsLine(in_destination_data, in_distance_accumulation_raster, in_back_direction_raster, out_polyline_features, {destination_field}, {path_type}, {create_network_paths})
ИмяОписаниеТип данных
in_destination_data

Целочисленный растр или объект (точка, линия или полигон), определяющий местоположения, от которых будет определяться оптимальный путь до источника с наименьшей стоимостью.

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

Raster Layer; Feature Layer
in_distance_accumulation_raster

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

Растр накопления расстояния обычно создается с помощью инструментов Накопление расстояния или Распределение по расстоянию. Каждая ячейка в растре накопления расстояния представляет минимальное суммарное стоимостное расстояние по поверхности от каждой ячейки до набора исходных ячеек.

Raster Layer
in_back_direction_raster

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

Диапазон значений - от 0 до 360 градусов, где значение 0 резервируется для ячеек источников. Направление прямо на восток (вправо) определяется, как равное 90 градусам; значения увеличиваются по часовой стрелке (180 - на юг; 270 - на запад; и 360 на север).

Raster Layer
out_polyline_features

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

Feature Class
destination_field
(Дополнительный)

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

Field
path_type
(Дополнительный)

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

  • EACH_ZONEВ выходном растре определяется и сохраняется маршрут с наименьшей стоимостью перемещения для каждой зоны входных данных объектов назначения. С этой опцией путь с наименьшей стоимостью для каждой зоны начинается в ячейке с наименьшим весом стоимостного расстояния в зоне.
  • BEST_SINGLEДля всех ячеек на входных данных адресатов путь с наименьшей стоимостью перемещения вычисляется из ячейки, лежащей на маршруте с наименьшей стоимостью перемещения до ячеек источников и имеющей минимальное значение стоимости.
  • EACH_CELLНа выходном растре определяется и сохраняется маршрут с наименьшей стоимостью перемещения для каждой ячейки, имеющей действительные значения на входных данных объектов назначения. С этой опцией каждая ячейка во входных данных назначения рассматривается по отдельности, и путь с наименьшей стоимостью определяется для каждой ячейки.
String
create_network_paths
(Дополнительный)

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

  • DESTINATIONS_TO_SOURCESВычисляются полные пути от назначений к источникам, которые могут быть перекрывающимися. Это значение по умолчанию
  • NETWORK_PATHSВычисляются неперекрывающиеся сетевые пути.
Boolean

Пример кода

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

Пример скрипта окна Python для использования функции.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
OptimalPathAsLine("observers.shp", "distaccum.tif", "backdir.tif",
                  "c:/sapyexamples/output/outOptimalPath01.shp")
OptimalPathAsLine, пример 2 (автономный скрипт)

Вычисляет маршрут с наименьшей стоимостью перемещения из источника до объекта назначения.

# Name: OptimalPathAsLine_Ex_02.py
# Description: Calculates the least-cost path from a source to 
#              a destination.
# 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
inDestination = "observers.shp"
inDistAccum = "accumraster.tif"
inBackDir = "backdir2.tif"
outPathFeat = "c:/sapyexamples/output.gdb/optimalfeaturepaths02"
destField = "FID"
method = "EACH_CELL"

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute
OptimalPathAsLine(inDestination, inDistAccum, inBackDir, 
                  outPathFeat, destField, method)