Добавить местоположения (Network Analyst)

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

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

Более подробно о том, как инструмент Добавить местоположения определяет входные данные для анализа в сеть

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

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

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

    Более подробно об установках положений слоя сетевого анализа.

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

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

Параметры

ПодписьОписаниеТип данных
Входной слой сетевого анализа

Слой сетевого анализа, к которому будет добавлен объект сетевого анализа.

Network Analyst Layer
Подслой

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

String
Входные положения

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

Table View
Сопоставление полей
(Дополнительный)

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

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

Если для параметра не будет указано значение поля и значение по умолчанию, то будут получены объекты сетевого анализа с отсутствующими (нулевыми) значениями для этого параметра.

Полный список входных полей каждого подслоя для каждого типа слоя сетевого анализа доступен в документации каждого слоя. Например, изучите входные поля подслоя Остановки слоя Маршрут.

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

Более подробно о полях сетевого положения

Примечание:

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

Network Analyst Class FieldMap
Допуск поиска
(Дополнительный)

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

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

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

Этот параметр не используется при добавлении местоположений с использованием существующих полей сетевого местоположения.

Прежние версии:

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

Linear Unit
Поля сортировки
(Дополнительный)

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

Field
Критерии поиска
(Дополнительный)

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

Ниже приведены доступные варианты типов привязки для каждого источника сети:

  • Нет – точка не будет расположена на элементах этого сетевого источника.
  • Форма — точка будет расположена на ближайшей точке элемента этого сетевого источника.
  • Середина — эта опция больше не используется и ведет себя как Форма.
  • Конец — эта опция больше не используется и ведет себя как Форма.

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

Этот параметр не используется при добавлении местоположений с использованием существующих полей сетевого местоположения.

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

Прежние версии:

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

Value Table
Найти ближайшие среди всех классов
(Дополнительный)

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

Boolean
Присоединить к существующим местоположениям
(Дополнительный)

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

  • Отмечено – новый объект сетевого анализа добавляется в существующий набор объектов выбранного подслоя. Это значение по умолчанию
  • Не отмечено – существующие объекты сетевого анализа удаляются и заменяются новыми.
Boolean
Замкнуть на сеть
(Дополнительный)

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

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

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

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

  • Отмечено – геометрия сетевых местоположений будет замкнута на их положения в сети.
  • Не отмечено – геометрия сетевых положений будет определяться геометрией входных объектов. Это значение по умолчанию
Boolean
Отступ замыкания
(Дополнительный)

Расстояние смещения, которое будет применяться в случае замыкания точки к сети. Нулевое расстояние смещения означает, что точки будут совпадать с сетевым объектом (обычно линейным). Чтобы сместить точку от сетевого объекта, введите расстояние смещения. Смещение связано с положением исходной точки; поэтому, если исходная точка была расположена слева, то ее новое положение будет смещено влево. Если она изначально была расположена справа, то ее новое положение будет смещено вправо.

По умолчанию 5 метров. Но этот параметр игнорируется, если снята отметка Замкнуть на сеть.

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

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

Linear Unit
Исключить части сети с ограничениями
(Дополнительный)

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

Boolean
Поисковый запрос
(Дополнительный)

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

К любому источнику сети, явно не указанному на панели Геообработка, не будет применен запрос.

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

Этот параметр не используется при добавлении местоположений с использованием существующих полей сетевого местоположения.

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

Прежние версии:

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

Value Table
Разрешить автоматическое перемещение во время решения
(Дополнительный)

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

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

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

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

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

Этот параметр не используется, если источником сетевых данных слоя сетевого анализа является портал ArcGIS Enterprise, который не поддерживает использование полей сетевых положений.

Прежние версии:

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

Boolean

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

ПодписьОписаниеТип данных
Обновленный входной слой сетевого анализа

Обновленный слой сетевого анализа.

Network Analyst Layer

arcpy.management.AddLocations(in_network_analysis_layer, sub_layer, in_table, {field_mappings}, {search_tolerance}, {sort_field}, {search_criteria}, {match_type}, {append}, {snap_to_position_along_network}, {snap_offset}, {exclude_restricted_elements}, {search_query}, {allow_auto_relocate})
ИмяОписаниеТип данных
in_network_analysis_layer

Слой сетевого анализа, к которому будет добавлен объект сетевого анализа.

Network Analyst Layer
sub_layer

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

String
in_table

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

Table View
field_mappings
(Дополнительный)

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

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

Если для параметра не будет указано значение поля и значение по умолчанию, то будут получены объекты сетевого анализа с отсутствующими (нулевыми) значениями для этого параметра.

Полный список входных полей каждого подслоя для каждого типа слоя сетевого анализа доступен в документации каждого слоя. Например, изучите входные поля подслоя Остановки слоя Маршрут.

Для указания значения параметра используется объект NAClassFieldMappings, полученный из класса NAClassFieldMappings. Объект NAClassFieldMappings представляет собой коллекцию объектов NAClassFieldMap, позволяющую задавать значения по умолчанию или сопоставлять имена полей из вводных объектов со свойствами объекта сетевого анализа. Если загружаемые данные содержат сетевые положения или диапазоны положений, основанные на наборе сетевых данных, использованных для анализа, сопоставьте поля сетевых положений из входных объектов со свойствами сетевых положений. Указание полей сетевого положения в сопоставлении полей выполняется так же, как с помощью параметра Использовать поля сетевых положений из диалогового окна инструмента.

Более подробно о полях сетевого положения

Примечание:

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

Network Analyst Class FieldMap
search_tolerance
(Дополнительный)

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

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

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

Этот параметр не используется при добавлении местоположений с использованием существующих полей сетевого местоположения.

Прежние версии:

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

Linear Unit
sort_field
(Дополнительный)

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

Field
search_criteria
[[Source, SnapType],...]
(Дополнительный)

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

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

Ниже приведены доступные варианты типов привязки для каждого источника сети:

  • NONE – точка не будет расположена на элементах этого сетевого источника.
  • SHAPE – точка будет расположена на ближайшей точке элемента этого сетевого источника.

Например, значение параметра [["Streets","SHAPE"],["Streets_ND_Junctions","NONE"]] указывает, что поиск может выполняться по геометрии источника Streets, но не по источнику Streets_ND_Junctions.

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

Прежние версии:
Исторически инструмент поддерживал опции типа замыкания MIDDLE, END и MIDDLE_END. Эти опции устарели и поддерживаются только для обратной совместимости. Если указана одна из этих опций, инструмент возвращается к опции SHAPE для этого сетевого источника.

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

Этот параметр не используется при добавлении местоположений с использованием существующих полей сетевого местоположения.

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

Прежние версии:

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

Value Table
match_type
(Дополнительный)

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

Boolean
append
(Дополнительный)

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

  • APPENDНовый объект сетевого анализа добавляется в существующий набор объектов выбранного подслоя. Это значение по умолчанию
  • CLEARСуществующие объекты сетевого анализа удаляются и заменяются новыми.
Boolean
snap_to_position_along_network
(Дополнительный)

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

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

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

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

  • NO_SNAPГеометрия сетевых положений будет определяться геометрией входных объектов. Это значение по умолчанию
  • SNAPГеометрия сетевых местоположений будет замкнута на их положения в сети.
Boolean
snap_offset
(Дополнительный)

Расстояние смещения, которое будет применяться в случае замыкания точки к сети. Нулевое расстояние смещения означает, что точки будут совпадать с сетевым объектом (обычно линейным). Чтобы сместить точку от сетевого объекта, введите расстояние смещения. Смещение связано с положением исходной точки; поэтому, если исходная точка была расположена слева, то ее новое положение будет смещено влево. Если она изначально была расположена справа, то ее новое положение будет смещено вправо.

По умолчанию 5 метров. Однако этот параметр игнорируется если для snap_to_position_along_network задано NO_SNAP.

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

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

Linear Unit
exclude_restricted_elements
(Дополнительный)

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

Boolean
search_query
[[Source, Expression],...]
(Дополнительный)

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

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

Например, значение [["Streets", "ROAD_CLASS <> 3"], ["Streets_ND_Junctions", ""]] задает выражение SQL для класса объектов источника Streets и отсутствие выражения для класса объектов источника Streets_ND_Junctions. Если сетевой источник не включен в список, он рассматривается, как не имеющий запроса. Значение [["Streets", "ROAD_CLASS <> 3"]] эквивалентно [["Streets", "ROAD_CLASS <> 3"], ["Streets_ND_Junctions", ""]].

Более подробно о синтаксисе SQL см. Справочник по SQL для выражений запросов, применяемых в ArcGIS.

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

Этот параметр не используется при добавлении местоположений с использованием существующих полей сетевого местоположения.

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

Прежние версии:

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

Value Table
allow_auto_relocate
(Дополнительный)

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

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

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

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

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

Этот параметр не используется, если источником сетевых данных слоя сетевого анализа является портал ArcGIS Enterprise, который не поддерживает использование полей сетевых положений.

Прежние версии:

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

Boolean

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

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

Обновленный слой сетевого анализа.

Network Analyst Layer

Пример кода

AddLocations. Пример 1 (окно Python)

Запустите инструмент в окне Python, чтобы добавить остановки в слой анализа маршрута с именем Route.

import arcpy
hospitals = "C:/Data/SanFrancisco.gdb/Analysis/Hospitals"
arcpy.na.AddLocations("Route", "Stops", hospitals)
AddLocations, пример 2 (рабочий процесс)

В следующем автономном скрипте Python показано, как с помощью функции AddLocations можно загружать исходные пункты и места назначения в матрицу стоимости OD.

Прежние версии:

Функцию GetNASublayer можно использовать для извлечения подслоев слоя сетевого анализа. Она была введена в ArcGIS Pro 2.7. В более ранних версиях программного обеспечения лучшим способом извлечения объекта подслоя слоя сетевого анализа было использование метода listLayers объекта сетевого анализа Layer, использующего имя подслоя в качестве подстановочного знака.

# Name: AddLocations_Workflow.py
# Description: Calculate a travel time matrix between stores. Use the Add
#               Locations tool to load origins and destinations into an OD Cost
#               Matrix layer. Since the origins and destinations are the same in
#               this case, the origins are first loaded from the stores feature
#               class using geometry, and the destinations are loaded from the
#               origins using network location fields in order to speed up the
#               load times.
# Requirements: Network Analyst Extension

# Import system modules
import arcpy
from arcpy import env
import os

try:
    # Check out Network Analyst license if available. Fail if the Network Analyst license is not available.
    if arcpy.CheckExtension("network") == "Available":
        arcpy.CheckOutExtension("network")
    else:
        raise arcpy.ExecuteError("Network Analyst Extension license is not available.")

    # Set environment settings
    output_dir = "C:/Data"
    # The NA layer's data will be saved to the workspace specified here
    env.workspace = os.path.join(output_dir, "Output.gdb")
    env.overwriteOutput = True

    # Set inputs and outputs
    input_gdb = "C:/Data/SanFrancisco.gdb"
    network = os.path.join(input_gdb, "Transportation", "Streets_ND")
    layer_name = "StoreTravelTimeMatrix"
    travel_mode = "Driving Time"
    stores = os.path.join(input_gdb, "Analysis", "Stores")
    search_tolerance = "500 Meters"
    search_query = [["Streets", '"FREEWAY" = 0'], ["Streets_ND_Junctions", ""]]
    output_layer_file = os.path.join(output_dir, layer_name + ".lyrx")

    # Create a new OD cost matrix analysis layer. For this scenario, the default
    # value for all the remaining parameters statisfies the analysis requirements
    result_object = arcpy.na.MakeODCostMatrixAnalysisLayer(
        network, layer_name, travel_mode
    )

    # Get the layer object from the result object. The OD cost matrix layer can
    # now be referenced using the layer object.
    layer_object = result_object.getOutput(0)

    # Get the names of all the sublayers within the OD layer.
    sublayer_names = arcpy.na.GetNAClassNames(layer_object)
    # Store the layer names for later use
    origins_layer_name = sublayer_names["Origins"]
    destinations_layer_name = sublayer_names["Destinations"]

    # Load store features as origins using the geometry of store features.
    # Ensure that the stores are not located on freeways by using a search query.
    arcpy.na.AddLocations(
        layer_object, origins_layer_name, stores, "",
        search_tolerance, search_query=search_query
    )

    # Because we want our origins and destinations to be the same, load the
    # origins as destinations using the network locations fields. Loading using
    # existing network location fields is much faster than loading using geometry
    # because the network locations have already been calculated.
    # Create a field mappings object that supports network location fields using
    # the candidate fields from origins
    origins_sublayer = arcpy.na.GetNASublayer(layer_object, "Origins")
    candidate_fields = arcpy.ListFields(origins_sublayer)
    field_mappings = arcpy.na.NAClassFieldMappings(
        layer_object, destinations_layer_name, True, candidate_fields
    )
    arcpy.na.AddLocations(
        layer_object, destinations_layer_name, origins_sublayer, field_mappings
    )

    # Solve the od cost matrix layer. Halt the execution if there is an
    # invalid location
    arcpy.na.Solve(layer_object, "HALT")

    # Save the solved OD cost matrix layer as a layer file on disk
    layer_object.saveACopy(output_layer_file)

    print("Script completed successfully")

except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print("An error occurred on line %i" % tb.tb_lineno)
    print(str(e))