Сводка
Специальный для типа входных данных курсор записи для класса solver, который может использоваться для добавления строк непосредственно во входные данные.
Описание
Экземпляры этого класса напрямую не создаются. Вместо этого они создаются через вызов метода insertCursor на одном из классов solver.
Обзор метода
Метод | Объяснение |
insertRow (row) | Вставьте строку во входные данные механизма расчета сетевого анализа с помощью курсора. |
Методы
insertRow (row)
Parameter | Объяснение | Тип данных |
row | Вставляемая строка представляет собой список или кортеж. Длина списка, порядок расположения в нем элементов и типы данных элементов списка должны соответствовать списку названий полей, который содержится в параметре field_names метода insertCursor, используемого для работы с курсором. | List |
Пример кода
Использовать метод insertCursor и объект SolverInsertCursor для настройки входных параметров анализа.
# An example showing how to use the insertCursor() method to set inputs for an analysis
import arcpy
arcpy.CheckOutExtension("network")
nds = "C:/data/NorthAmerica.gdb/Routing/Routing_ND"
nd_layer_name = "Routing_ND"
output_routes = "C:/data/io.gdb/Routes"
# Create a network dataset layer and get the desired travel mode for analysis
arcpy.nax.MakeNetworkDatasetLayer(nds, nd_layer_name)
nd_travel_modes = arcpy.nax.GetTravelModes(nd_layer_name)
travel_mode = nd_travel_modes["Driving Time"]
# Instantiate a Route solver object
route = arcpy.nax.Route(nd_layer_name)
# Set properties
route.timeUnits = arcpy.nax.TimeUnits.Minutes
route.travelMode = travel_mode
route.routeShapeType = arcpy.nax.RouteShapeType.TrueShapeWithMeasures
# Set input stops using insertCursor()
fields = ["Name", "RouteName", "SHAPE@XY"]
with route.insertCursor(arcpy.nax.RouteInputDataType.Stops, fields) as cur:
cur.insertRow(["Stop 1", "Route 1", (-117.10191118199998, 32.634351493000054)])
cur.insertRow(["Stop 2", "Route 1", (-116.97970607599996, 32.56210221400005)])
cur.insertRow(["Stop 1", "Route 2", (-116.97141447099995, 32.654230331000065)])
cur.insertRow(["Stop 2", "Route 2", (-117.00762504, 32.70097640100005)])
# Solve the analysis
result = route.solve()