Оптимальный путь как линия (Анализ растра)

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

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

Иллюстрация

Иллюстрация инструмента Оптимальный путь как линия

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

  • Этот инструмент портала для анализа растров доступен, когда вы выполнили вход на портал ArcGIS Enterprise с настроенным модулем ArcGIS Image Server для Анализ растров. Когда инструмент запускается, ArcGIS Pro выступает в качестве клиента, и обработка проходит на серверах, интегрированных с ArcGIS Enterprise. Инструмент портала использует слои портала в качестве входных данных и создает выходные данные на этом же портале.

    Параметр Входной растровый слой поддерживает слой портала, URI или URL сервиса изображений или выходные данные инструмента Создать слой сервера изображений. Входной векторный слой может быть слоем портала или URI либо URL сервиса объектов. Указанный инструмент не поддерживает локальные наборы растровых данных или слои. Хотя вы можете использовать локальные векторные данные или слои как входные данные для инструментов портала, лучше все же использовать слои портала в качестве входных данных.

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

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

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

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

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

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

  • Выходной сервис объектов включает поле DestID, которое определяет назначение каждой линии.

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

Параметры

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

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

Для растра входным типом должен быть целочисленный, и он должен состоять из ячеек, которые имеют допустимые значения (ноль является допустимым значением). А остальным ячейкам должно быть присвоено значение NoData. Для сервиса объектов типами входных данных могут быть точки, линии или полигоны.

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

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

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

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

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

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

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

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

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

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

Поле должно быть целочисленным.

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

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

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

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

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

Производные выходные данные

ПодписьОписаниеТип данных
Выходной полилинейный объект

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

Векторный слой

arcpy.ra.OptimalPathAsLine(inputDestinationRasterOrFeatures, inputDistanceAccumulationRaster, inputBackDirectionRaster, outputPolylineName, {destinationField}, {pathType}, {createNetworkPaths})
ИмяОписаниеТип данных
inputDestinationRasterOrFeatures

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

Для растра входным типом должен быть целочисленный, и он должен состоять из ячеек, которые имеют допустимые значения (ноль является допустимым значением). А остальным ячейкам должно быть присвоено значение NoData. Для сервиса объектов типами входных данных могут быть точки, линии или полигоны.

Raster Layer; Image Service; Feature Layer; String
inputDistanceAccumulationRaster

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

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

Raster Layer; Image Service; String
inputBackDirectionRaster

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

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

Raster Layer; Image Service; String
outputPolylineName

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

String
destinationField
(Дополнительный)

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

Поле должно быть целочисленным.

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

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

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

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

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

Производные выходные данные

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

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

Векторный слой

Пример кода

Optimal Path As Line, пример 1 (окно Python)

В следующем скрипте окна Python показано, как используется инструмент OptimalPathAsLine.

import arcpy

arcpy.ra.OptimalPathAsLine(
    "https://myserver/rest/services/destination/ImageServer", 
    "https://myserver/rest/services/accumulationraster/ImageServer", 
    "https://myserver/rest/services/backdirection/ImageServer", 
    "outpath")
Optimal Path As Line, пример 2 (автономный скрипт)

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

#-------------------------------------------------------------------------------
# Name: OptimalPathAsLine_Ex_02.py
# Description: Calculates the optimal path from a source to a destination.
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inputDestinationLayer =
    'https://MyPortal.esri.com/server/rest/services/Hosted/destination/ImageServer'
inputAccumulationLayer =
    'https://MyPortal.esri.com/server/rest/services/Hosted/costaccumulation/ImageServer'
inputDirectionLayer = 
    'https://MyPortal.esri.com/server/rest/services/Hosted/backdirection/ImageServer'
outputName = 'outTravelPaths'


arcpy.ra.OptimalPathAsLine(inputDestinationLayer, inputAccumulationLayer,
                            inputDirectionLayer, outputName)

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

  • Basic: Обязательно ArcGIS Image Server
  • Standard: Обязательно ArcGIS Image Server
  • Advanced: Обязательно ArcGIS Image Server

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