GetTravelModes

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

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

Обсуждение

Один или несколько режимов передвижения можно определить в локальном наборе сетевых данных или в сетевом источнике данных с портала ArcGIS Enterprise, портала ArcGIS Online или автономного сайта ArcGIS Server. Эта функция может использоваться для заполнения списка значений режимами передвижения, доступными в источнике сетевых данных. Например, инструмент-скрипт геообработки может иметь параметр типа String, называемый Режимы передвижения, который можно заполнить списком имен режимов передвижения, когда в диалоговом окне инструмента будет выбран набор сетевых данных.

Синтаксис

GetTravelModes (network_dataset_path)
ПараметрОписаниеТип данных
network_dataset_path

The network dataset or service from which to retrieve travel modes. The argument can be specified using one of the following options:

String
Возвращаемое значение
Тип данныхОписание
Dictionary

Словарь, ключами которого являются имена режимов передвижения, а значениями – объекты режимов передвижения.

Пример кода

GetTravelModes, пример 1

Добавьте в набор сетевых данных режимы передвижения и распечатайте режим передвижения пешком.

import arcpy

nds = 'C:/Data/SanDiego.gdb/Transportation/Streets_ND'
travel_modes = arcpy.nax.GetTravelModes(nds)
print(travel_modes['Walking Time'])
Пример GetTravelModes 2

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

import arcpy

travel_modes = arcpy.nax.GetTravelModes("https://www.arcgis.com/")
travel_mode_names = [travel_modes[mode].name for mode in travel_modes]
GetTravelModes, пример 3

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

import arcpy

network = r"C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
# Get all travel modes from the network dataset
travel_modes = arcpy.nax.GetTravelModes(network)

# Print the impedance attribute and restrictions used for each travel mode
for travel_mode_name in travel_modes:
    travel_mode = travel_modes[travel_mode_name]
    print(travel_mode_name)
    print("Impedance:", travel_mode.impedance)
    print("Restrictions:", ", ".join(travel_mode.restrictions))
    print("")
GetTravelModes, пример 4

В этом примере показано, как скопировать режим передвижения в сети, обновить его свойства и использовать в анализе.

import arcpy

network = r"C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
# Get all travel modes from the network dataset
travel_modes = arcpy.nax.GetTravelModes(network)
# Construct a new TravelMode object from the existing Driving Time travel mode
new_travel_mode = arcpy.nax.TravelMode(travel_modes["Driving Time"])
# Update the useHierarchy property to turn hierarchy off, and update the name
new_travel_mode.name = "Driving Time without Hierarchy"
new_travel_mode.useHierarchy = "NO_HIERARCHY"
# Use the new travel mode object when constructing an OD cost matrix analysis
od_object = arcpy.nax.OriginDestinationCostMatrix(network)
od_object.travelMode = new_travel_mode
GetTravelModes, пример 5

В следующем примере кода показано, как вызвать GetTravelModes для службы маршрутизации на автономном сайте ArcGIS Server.

Узнайте больше о том, как указать информационный словарь сервисов маршрутизации.

travel_modes = arcpy.nax.GetTravelModes(
    {
        "utilityUrl": f"https://mysite.mydomain.com/:6443/arcgis/rest/services/MyRouting/NetworkAnalysisUtilities/GPServer",
        "authenticationInfo": {
            "username": "my_username",
            "password": "my_password"
        }
    }
)