Доступно с лицензией Spatial Analyst.
Краткая информация
Вычисляет маршрут с наименьшей стоимостью перемещения от исходного объекта до объекта назначения.
Использование
Инструмент Оптимальный путь как полилиния строит выходной полилинейный объектов, в котором записан маршрут или маршруты с наименьшей стоимостью перемещения из источников до ближайшего назначения по поверхности совокупной стоимости, в терминах стоимостного расстояния.
Обычно требуется запустить один или несколько инструментов взвешенного расстояния (Стоимостное расстояние, Стоимостное направление или Распределение по стоимостному расстоянию) до запуска инструмента Оптимальный путь как полилиния для создания входного растра стоимостного расстояния и входного растра стоимостного направления. Это обязательные входные растры для инструмента Оптимальный путь как полилиния.
Когда входные данные объектов назначений (адресатов) представлены растром, набор ячеек адресатов состоит из всех ячеек на входном растре или в векторных данных объектов назначения, которые имеют действительные значения. Ячейки, имеющие значение NoData, не включаются в набор источников. Нулевое значение рассматривается как истинный адресат. Растр объектов назначения может быть создан с использованием инструментов извлечения.
Если входные данные источника являются объектом, по умолчанию используется первое доступное поле. Если доступных полей нет, используется поле ObjectID (например, OID или FID, в зависимости от типа входных данных объекта).
При использовании данных полигонального объекта в качестве входных назначений объекта следует особенно тщательно выбирать способ обработки размера выходной ячейки, если его можно охарактеризовать как грубый относительно подробных сведений во входных данных. Процесс внутренней растеризации, которая использует инструмент Полигон в растр, будет использовать значение по умолчанию CELL_CENTER для параметра Метод присвоения значений ячейкам. Это означает, что данные, не расположенные по центру ячейки, не будут включены в промежуточные растеризованные выходные данные назначения, поэтому не будут представлены в расчётах расстояния. Например, если назначением является ряд небольших полигонов, например периметры знаний, которые невелики относительно размеру выходной ячейки, возможно, что только некоторые из них попадут по центру выходных растровых ячеек, и, видимо, большинство остальных объекты будут потеряны в анализе.
Во избежание этой ситуации в качестве промежуточного шага можно напрямую растеризовать входные объекты с помощью инструмента Полигон в растр и задать Поле приоритета. Затем используйте полученные выходные данные в качестве входных для того инструмента расстояний, который вам требуется. Кроме того, можно выбрать небольшой размер ячейки, чтобы получить достаточный объем данных из входных объектов.
Выходной полилинейный объект содержит поле DestID, где указывается, к какому назначению направлена каждая линия. Если выходные данные записываются в файловую базу геоданных, в них содержится поле shape_length, где хранится общая длина пути с наименьшей стоимостью.
Инструмент Оптимальный путь как полилиния игнорирует параметр среды Размер ячейки и будет использовать размер ячейки Входного растра стоимостного направления для выходного растра. Структура растра направления может сильно измениться, если будет изменено его разрешение. Чтобы избежать ошибок, при использовании этого инструмента не следует устанавливать параметр размера ячейки.
Инструмент Оптимальный путь как полилиния может быть также использован для получения маршрута с наименьшим сопротивлением при движении вниз по цифровой модели рельефа (ЦМР). В этом случае используйте ЦМР в качестве Входного растра стоимостного расстояния и выходные данные инструмента Направление стока в качестве Входного растра стоимостного направления. Допустимыми значениями растра направления стока являются 1, 2, 4, 8, 16, 32, 64 и 128, а допустимыми значениями растра направления – 1, 2, 3, 4, 5, 6, 7 и 8. Оба этих растра допустимы.
См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
CostPathAsPolyline (in_destination_data, in_cost_distance_raster, in_cost_backlink_raster, out_polyline_features, {path_type}, {destination_field})
Параметр | Объяснение | Тип данных |
in_destination_data | Растр или набор пространственных данных, определяющие ячейки, из которых вычисляется путь с наименьшей стоимостью перемещения до источника, расположенного ближе всего по стоимости перемещения. Если входные данные представлены растром, они состоят из ячеек, имеющих действительные значения (ноль является действительным значением), а остальным ячейкам должно быть присвоено значение NoData. | Raster Layer; Feature Layer |
in_cost_distance_raster | Растр стоимостного расстояния, используемый для определения маршрута с наименьшей стоимостью из источников к назначениям. Растр стоимостного расстояния обычно создается с помощью инструментов Стоимостное расстояние, Распределение по стоимостному расстоянию или Стоимостное направление. Растр стоимостного расстояния хранит для каждой ячейки расстояние с минимальной совокупной стоимостью перемещения по поверхности стоимости из каждой ячейки до набора ячеек источников. | Raster Layer |
in_cost_backlink_raster | Имя растра стоимостного направления, используемого для определения пути возвращения к источнику по маршруту с наименьшей стоимостью перемещения. Для каждой ячейки на растре направления значение определяет соседнюю ячейку, которая является следующей ячейкой на маршруте с наименьшей стоимостью перемещения из ячейки до единственной ячейки источника или набора ячеек источников. | Raster Layer |
out_polyline_features | Выходной класс объектов, в котором хранится путь наименьшей стоимости. | Feature Class |
path_type (Дополнительный) | Ключевое слово, определяющее то, как в вычислениях оптимального пути будут интерпретированы значения и зоны во входных данных объектов назначения.
| String |
destination_field (Дополнительный) | Значения, используемые для получения значений местоположений адресатов. Входные векторные данные должны включать по крайней мере одно корректное поле таблицы атрибутов. | Field |
Пример кода
CostPathAsPolyline, пример 1 (окно Python)
В следующем скрипте окна Python показано, как используется этот инструмент.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
CostPathAsPolyline("observers", "costraster", "backlink2", "c:/sapyexamples/output/outcostpth01.shp")
CostPathAsPolyline, пример 2 (автономный скрипт)
Вычисляет путь с наименьшей стоимостью от источника до места назначения.
# Name: CostPathAsPolyline_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"
inCostRaster = "costraster"
inBacklink = "backlink2"
outCostPathFeat = "c:/sapyexamples/output.gdb/outcostpathfeat02"
method = "EACH_CELL"
destField = "FID"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute
CostPathAsPolyline(inDestination, inCostRaster, inBacklink,
outCostPathFeat, method, destField)
Параметры среды
- Автоподтверждение
- Текущая рабочая область
- Выходное Z-значение по умолчанию
- Разрешение M
- Допуск M
- Поддерживать пространственный индекс
- Выходное ключевое слово CONFIG
- Выходные данные содержат M-значения
- Выходные данные содержат Z значения
- Выходной M домен
- Выходной XY домен
- Выходной Z домен
- Временная рабочая область
- Разрешение XY
- Допуск XY
- Разрешение Z
- Допуск Z
Информация о лицензиях
- ArcGIS Desktop Basic: Требует Spatial Analyst
- ArcGIS Desktop Standard: Требует Spatial Analyst
- ArcGIS Desktop Advanced: Требует Spatial Analyst