ArcGIS for Desktop

  • Документация
  • Стоимость
  • Поддержка

  • My Profile
  • Справка
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS for Desktop

Полноценная профессиональная ГИС

ArcGIS for Server

ГИС предприятия

ArcGIS for Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Стоимость
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

Справка

  • Главная
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительно...

Найти маршруты

Доступно с лицензией Network Analyst.

  • Краткая информация
  • Рисунок
  • Использование
  • Синтаксис
  • Пример кода
  • Параметры среды
  • Информация о лицензировании

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

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

Примечание:

Инструменты Найти маршруты (Find Routes) и Создать слой маршрутов (Make Route Layer) похожи, но предназначены для различных целей. Используйте при настройке сервиса геообработки Найти маршруты; это упрощает процесс настройки. В противном случае используйте Создать слой маршрутов.

Для создания сервиса геообработки построения маршрутов с использованием инструмента Найти маршруты вам необходимо только настроить один инструмент и опубликовать инструмент напрямую, как сервис. В отличие от предыдущего случая, вам необходимо создать модель при помощи инструмента Создать слой маршрутов, правильно подключить ее к различным другим инструментам и опубликовать модель для создания сервиса геообработки. О том, как создать сервис ближайших пунктов обслуживания с использованием учебных данных см. в разделе Обзор примеров сервисов геообработки ArcGIS Network Analyst. Можно также использовать сервис поиска маршрутов ArcGIS Online. Это сервис, который запускается как инструмент геообработки в ArcMap, доступен через другие приложения и содержит высококачественные данные дорог на весь мир.

Рисунок

Самый быстрый маршрут между точками A и B

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

  • Для поиска маршрутов для нескольких транспортных средств рассмотрите атрибут RouteName, описанный в параметре Остановки (Stops). Для поиска маршрутов для нескольких транспортных средств необходимо, чтобы до расчета остановки были сгруппированы в меньшие поднаборы (один для каждого маршрута или транспорта). Маршрут строится для каждого поднабора остановок. (Если необходимо группировать остановки, а также строить маршруты между ними, для оптимизации процесса примените вместо этого инструменты задачи выбора маршрута транспорта.)
  • В диалоговом окне инструмента есть разнообразные дополнительные параметры, сгруппированные для удобства работы в следующие шесть категорий:

    • Расширенный анализ
    • Барьеры
    • Пользовательский режим передвижения
    • Набор сетевых данных
    • Сетевые положения
    • Выходные данные
    • Возможности сервиса

  • Более подробно о выходных данных инструмента Найти маршруты

Синтаксис

FindRoutes_na (Stops, Measurement_Units, Network_Dataset, Output_Geodatabase, Output_Routes_Name, Output_Route_Edges_Name, Output_Directions_Name, Output_Stops_Name, {Reorder_Stops_to_Find_Optimal_Routes}, {Preserve_Terminal_Stops}, {Return_to_Start}, {Travel_Mode}, {Use_Time_Windows}, {Time_of_Day}, {Time_Zone_for_Time_of_Day}, {UTurn_Policy}, {Point_Barriers}, {Line_Barriers}, {Polygon_Barriers}, {Time_Attribute}, {Time_Attribute_Units}, {Distance_Attribute}, {Distance_Attribute_Units}, {Use_Hierarchy_in_Analysis}, {Restrictions}, {Attribute_Parameter_Values}, {Accumulate_Attributes}, {Maximum_Snap_Tolerance}, {Feature_Locator_WHERE_Clause}, {Route_Shape}, {Route_Line_Simplification_Tolerance}, {Populate_Directions}, {Populate_Route_Edges}, {Populate_Directions}, {Directions_Language}, {Directions_Distance_Units}, {Directions_Style_Name}, {Maximum_Features_Affected_by_Point_Barriers}, {Maximum_Features_Affected_by_Line_Barriers}, {Maximum_Features_Affected_by_Polygon_Barriers}, {Maximum_Stops}, {Maximum_Stops_per_Route}, {Force_Hierarchy_Beyond_Distance}, {Save_Output_Network_Analysis_Layer})
ПараметрОбъяснениеТип данных
Stops

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

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

OBJECTID – Системное поле ID.

SHAPE – Поле геометрии, определяющее географическое местоположение инцидента.

Name – Имя остановки. Имя используется в путевом листе. Если имя не указано, в выходных остановках, маршрутах и путевом листе автоматически создается уникальное имя с префиксом Location.

RouteName – Имя маршрута, для которого назначена остановка. Присвоение различным остановкам одного и того же имени маршрута приводит к группировке остановок, т.е. все они будут включены в один маршрут. Вы можете создавать несколько маршрутов за один раз, присваивая уникальные имена маршрутов различным группам остановок. С помощью этого инструмента вы можете группировать до 150 остановок на один маршрут.

Sequence – выходные маршруты пройдут по остановкам в том порядке, который задан этим атрибутом. В пределах группы остановок с одинаковым значением RouteName порядковый номер должен быть больше 0, но не должен превышать максимальное число остановок. Кроме того, порядковый номер не должен дублироваться.

Если опция Изменить порядок остановок для нахождения оптимального маршрута (Reorder Stops To Find Optimal Routes) включена (True), все значения последовательности, возможно, кроме первого и последнего, для каждого маршрута игнорируются, поэтому инструмент может определить последовательность, минимизирующую общую протяженность маршрута. (Параметры Сохранить порядок остановок (Preserve Ordering of Stops) и Возврат в начало (Return to Start) определяют, будут ли игнорироваться первое и последнее значения последовательности.)

AdditionalTime – время, затраченное на остановке, которое добавляется к общему времени маршрута. Единицы измерения для этого атрибута задаются параметром Единицы измерения (Measurement Units). Значение атрибута включается в анализ, только когда единицами измерения являются единицы времени. По умолчанию значение равно 0.

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

AdditionalDistance – дополнительное расстояние, пройденное на остановке, которое добавляется к общей протяженности маршрута. Единицы измерения для этого атрибута задаются параметром Единицы измерения (Measurement Units). Значение атрибута включается в анализ, только когда единицами измерения являются единицы расстояния. По умолчанию значение равно 0.

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

TimeWindowStart – самое раннее время посещения остановки. Убедитесь, что значение имеет формат даты-времени, например, 8/12/2015 12:15 PM. Задавая начало и окончание временного окна посещения остановки, можно указать, когда именно маршрут достигнет этой остановки. Если параметр Использовать временные окна (Use Time Windows) включен и для Единиц измерения (Measurement Units) выбрано время, инструмент попытается найти решение, минимизирующее расстояние маршрута и позволяющее посетить остановку в указанное временное окно.

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

Поле может содержать нулевое значение (null), это означает, что маршрут должен достичь остановки в любое время, до заданного параметром TimeWindowEnd. Если параметр TimeWindowEnd также содержит значение null, маршрут может посетить эту остановку в любое время.

TimeWindowEnd – самое позднее время посещения остановки. Убедитесь, что значение имеет формат даты-времени, например, 8/12/2015 12:15 PM. Задавая начало и окончание временного окна посещения остановки, можно указать, когда именно маршрут достигнет этой остановки. Если параметр Использовать временные окна (Use Time Windows) включен и для Единиц измерения (Measurement Units) выбрано время, инструмент попытается найти решение, минимизирующее расстояние маршрута и позволяющее посетить остановку в указанное временное окно.

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

Поле может содержать пустое значение (null), это означает, что маршрут может прибыть в любое время, после указанного атрибутом TimeWindowStart. Если параметр TimeWindowStart также содержит значение null, маршрут может посетить эту остановку в любое время.

CurbApproach – указывает направление, в котором транспортное средство может подъехать или отъехать от остановки. Значение поля указывается одним из следующих целых чисел (используйте числовой код, а не имя в скобках):

  • 0 (С любой стороны) – транспортное средство может подъезжать и отъезжать от остановки в любом направлении, т.е. в месте остановки разрешен разворот. Данный параметр можно выбрать, если возле остановки можно развернуться и это удобно. Такое решение может зависеть от ширины дороги и интенсивности движения или от наличия на остановке места для стоянки, где транспортное средство может выполнить разворот.
  • 1 (Справа по направлению движения) – когда транспортное средство подъезжает или отъезжает от остановки, она должна находиться по правую сторону транспортного средства. Разворот запрещен. Эта опция обычно используется для таких транспортных средств, как автобусы, которые должны подъезжать к автобусной остановке так, чтобы она находилась справа.
  • 2 (Слева по направлению движения) – когда транспортное средство подъезжает и отъезжает от остановки, бордюр должен находиться с левой стороны транспортного средства. Разворот запрещен. Эта опция обычно используется для таких транспортных средств, как автобусы, которые должны подъезжать к автобусной остановке так, чтобы она находилась слева.
  • 3 (Нет разворота) – при подъезде транспортного средства к остановке бордюр может располагаться с любой стороны транспортного средства. Но при отправлении транспортное средство не должно выполнять разворот.

Свойство CurbApproach было разработано для работы с обоими типами национальных стандартов дорожного движения: правостороннего (США) и левостороннего (Великобритания). Для начала рассмотрим случай, когда остановка располагается с левой стороны транспортного средства. Это условие должно обязательно выполняться в независимости от того движется транспорт по левой или по правой полосе дороги. Вы можете выбрать, с какой из двух сторон подъехать к остановке, независимо от национального стандарта дорожного движения, т.е. где будет находится точка заказа – справа или слева от транспортного средства. Например, если необходимо подходить к остановке так, чтобы отсутствовала полоса движения между транспортным средством и остановкой, то в США необходимо выбрать правую сторону транспорта (1), а в Великобритании левую сторону (2).

Feature Set
Measurement_Units

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

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

  • Meters
  • Kilometers
  • Feet
  • Yards
  • Miles
  • NauticalMiles
  • Seconds
  • Minutes
  • Hours
  • Days

Инструмент использует сетевой атрибут стоимости, заданный параметром Атрибут времени (Time Attribute) или параметром Атрибут расстояния (Distance Attribute), в зависимости от того, какие единицы измерения выбраны: времени или расстояния.

Инструмент выполняет необходимые преобразования единиц в том случае, если значение параметра Единицы измерения (Measurement Units) отличается от единиц соответствующего атрибута стоимости времени или расстояния.

String
Network_Dataset

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

Network Dataset Layer
Output_Geodatabase

Выходная рабочая область. Рабочая область должна существовать. Выходная рабочая область по умолчанию – in_memory.

Workspace
Output_Routes_Name

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

В разделе справки Выходные данные инструмента Найти маршруты описывается схема этого выходного класса пространственных объектов.

String
Output_Route_Edges_Name

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

В разделе справки Выходные данные инструмента Найти маршруты описывается схема этого выходного класса пространственных объектов.

String
Output_Directions_Name

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

В разделе справки Выходные данные инструмента Найти маршруты описывается схема этого выходного класса пространственных объектов.

String
Output_Stops_Name

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

В разделе справки Выходные данные инструмента Найти маршруты описывается схема этого выходного класса пространственных объектов.

String
Reorder_Stops_to_Find_Optimal_Routes
(дополнительно)

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

  • Checked (True) —Порядок остановок соответствует заданному вами порядку. Это является опцией по умолчанию. Порядок посещения остановок можно задать с помощью атрибута Sequence входных объектов-остановок или разрешить определение порядка по ID объектов-остановок.
  • Unchecked (False) —Инструмент определит порядок посещения с минимальной длиной маршрута или временем в пути. Порядок остановок может быть изменен в соответствии с временным окном. Дополнительные параметры позволяют сохранить первую и последнюю остановки, разрешив инструменту изменить порядок промежуточных остановок.

Определение оптимального порядка остановок и поиск наилучшего маршрута часто называется задачей по поиску маршрута коммивояжера (TSP).

Boolean
Preserve_Terminal_Stops
(дополнительно)

Когда опция Изменить порядок остановок для нахождения оптимальных маршрутов включена (или True), вы можете сохранить начальную или конечную остановку и позволить инструменту изменить порядок остальных.

Первая и последняя остановки определяются по атрибутивным значениям Sequence или, если значения Sequence равны null, по значениям Object ID.

  • PRESERVE_BOTH —Сохраняет первую и последнюю остановки входного заказа, как первую и последнюю остановки в маршруте.
  • PRESERVE_FIRST —Сохраняет первую остановку входного заказа, как первую остановку маршрута, при этом последняя остановка может менять порядок.
  • PRESERVE_LAST —Сохраняет на месте последнюю остановку входного заказа, как последнюю остановку маршрута, при этом первая остановка может менять порядок.
  • PRESERVE_NONE —И первая, и последняя остановки могут менять порядок.

Параметр Сохранить конечные остановки (Preserve Terminal Stops) игнорируется при отключении (или False) параметра Изменить порядок остановок для нахождения оптимальных маршрутов (Reorder Stops to Find Optimal Routes).

String
Return_to_Start
(дополнительно)

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

Начало маршрута является остановкой с наименьшим значением атрибута Sequence. Если значения атрибута Sequence являются нулевыми, это будет объект с наименьшим значением Object ID.

  • Checked (True) —Маршрут будет начинаться и заканчиваться на первой остановке. Это значение используется по умолчанию.
  • Unchecked (False) —Маршрут не будет начинаться и заканчиваться на первой остановке.
Boolean
Travel_Mode
(дополнительно)

Выберите вид транспорта для анализа. Всегда можно выбрать CUSTOM. Чтобы появились другие режимы, они должны быть представлены в наборе сетевых данных в параметре Network_Dataset. (Функция arcpy.na.GetTravelModes содержит словарь объектов режима движения для класса сетевых объектов, а свойство name возвращает имя объекта режима передвижения.)

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

  • UTurn_Policy

  • Time_Attribute

  • Time_Attribute_Units

  • Distance_Attribute

  • Distance_Attribute_Units

  • Use_Hierarchy_in_Analysis

  • Restrictions

  • Attribute_Parameter_Values

  • Route_Line_Simplification_Tolerance

  • CUSTOM —Определите режим, соответствующий вашим нуждам. При выборе режима CUSTOM инструмент не перезаписывает параметры режима, перечисленные выше. Это значение используется по умолчанию.
String
Use_Time_Windows
(дополнительно)

Включите эту опцию (или установите значение True), если у каких-либо входных остановок есть временные окна, указывающие, когда маршрут должен прибыть на них. Вы можете добавить временные окна к входным остановкам, введя значения времени в атрибуты TimeWindowStart и TimeWindowEnd.

  • Checked (True) —Входные остановки имеют временные окна и инструмент должен их учитывать.
  • Unchecked (False) —Входные остановки не имеют временных окон, а если имеют, вы не хотите учитывать их. Это значение используется по умолчанию.

Если включена опция Использовать временные окна (Use Time Windows) (или True), инструмент будет работать немного дольше, даже если ни у одной из входных остановок нет временных окон, поэтому эту опцию по возможности рекомендуется отключать (задавать False).

Boolean
Time_of_Day
(дополнительно)

Указывает время и дату начала маршрутов.

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

Параметр Часовой пояс для времени суток (Time Zone for Time of Day) определяет, как будут указываться время и дата, в UTC или в часовом поясе, в котором находится остановка.

Инструмент игнорирует этот параметр, если в Единицах измерения (Measurement Units) не выбрано время.

Date
Time_Zone_for_Time_of_Day
(дополнительно)

Указывает часовой пояс параметра Время суток (Time of Day).

  • GEO_LOCAL —Значения параметра Время дня (Time of Day) указываются во Всемирном координированном времени (UTC). Используйте эту опцию, если вы хотите создать маршрут для определенного времени, например текущего, но точно не знаете, в каком часовом поясе будет находиться первая остановка.Если вы создаете несколько маршрутов, охватывающих различные часовые пояса, время начала по UTC будет синхронизировано. Например, если Время дня (Time of Day) имеет значение 2-е Января, 10:00 a.m., это означает, что маршрут начнется в 5:00 утра по Стандартному Восточному времени (UTC-5:00) для часового пояса Восточное время, и в 4:00 утра по Центральному стандартному времени (UTC-6:00) для маршрутов в часовом поясе Центральное время. Оба маршрута начнутся в 10:00 утра по UTC.Время и дата прибытия и отправления, записанные в выходном классе объектов-остановок, будут соответствовать времени UTC.
  • UTC —Значение параметра Время дня (Time of Day) относится к часовому поясу, в котором находится первая остановка маршрута. Если вы создаете несколько маршрутов в различных часовых поясах, время начала будет отсчитываться от Всемирного координированного времени (UTC). Например, если Время дня (Time of Day) имеет значение 2-е Января, 10:00 a.m., это означает, что маршрут начнется в 10:00 утра Восточное время (3.00 p.m. по UTC) для часового пояса Восточное время, и в 10:00 утра Центральное поясное время (4:00 p.m. по UTC) для часового пояса Центральное время. Время начала по UTC будет отличаться на один час.Время и дата прибытия и отправления, записанные в выходном классе объектов-остановок, будут соответствовать часовому поясу первой остановки каждого маршрута.
String
UTurn_Policy
(дополнительно)

Правила разворота на соединениях. При разрешении U-образных разворотов неявно предполагается, что механизм расчета позволяет разворот на соединении и продолжение движения по той же улице в обратную сторону. Учитывая, что соединения представляют собой пересечения улиц и тупики, различные транспортные средства могут разворачиваться на некоторых соединениях, но не на всех – это зависит от того, является ли соединение перекрестком или тупиком. Для соответствия, параметр правил разворотов в неявном виде указывает количество ребер, или улиц, участвующих в соединении, что представляет валентность соединения. Ниже приведены допустимые значения для данного параметра; каждое из них сопровождается описанием значения в терминах валентности соединения.

  • ALLOW_UTURNS —Развороты разрешены в соединениях с любым количеством смежных ребер или улиц. Это значение используется по умолчанию.
  • NO_UTURNS —Развороты запрещены во всех соединениях, вне зависимости от их валентности.
  • ALLOW_DEAD_ENDS_ONLY —Развороты запрещены во всех соединениях, кроме тех, у которых имеется только одно смежное ребро (тупик).
  • ALLOW_DEAD_ENDS_AND_INTERSECTIONS_ONLY —Развороты запрещены в соединениях с ровно двумя смежными ребрами, но разрешены на перекрестках (в соединениях с тремя смежными ребрами или более) и в тупиках (соединениях с ровно одним смежным ребром). Зачастую, моделирующие улицы сети имеют избыточные соединения в середине сегментов дороги. Эта опция позволяет запретить развороты транспортных средств в таких местах.

Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не пользовательское значение.

String
Point_Barriers
(дополнительно)

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

ObjectID:

Управляемое системой поле ID.

Shape:

Поле геометрии, показывающее географическое положение объекта сетевого анализа.

Name:

Имя барьера.

BarrierType:

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

  • Ограничение (Restriction) (0) – запрещает прохождение через барьер. Это значение используется по умолчанию.
  • Дополнительная стоимость (Added Cost) (2) – Прохождение через барьер увеличивает сетевую стоимость на значение, указанное в полях Additional_Time и Additional_Distance.

Используйте значение 0 для Ограничения и 2 для Дополнительной стоимости.

Additional_Time:

указывает, какое время поездки добавляется при прохождении барьера. Это поле действительно только для барьеров с дополнительной стоимостью, и только если используются единицы измерения времени. Значение этого поля должно быть больше или равно нулю, а его единицы измерения соответствуют заданным в параметре Единицы измерения (Measurement Units).

Additional_Distance:

указывает, какое расстояние добавляется при прохождении барьера. Это поле действительно только для барьеров с дополнительной стоимостью, и только если используются единицы измерения расстояния. Значение этого поля должно быть больше или равно нулю, а его единицы измерения соответствуют заданным в параметре Единицы измерения (Measurement Units).

Feature Set
Line_Barriers
(дополнительно)

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

ObjectID:

Управляемое системой поле ID.

Shape:

Поле геометрии, показывающее географическое положение объекта сетевого анализа.

Name:

Имя барьера.

Feature Set
Polygon_Barriers
(дополнительно)

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

ObjectID:

Управляемое системой поле ID.

Shape:

Поле геометрии, показывающее географическое положение объекта сетевого анализа.

Name:

Имя барьера.

BarrierType:

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

  • Ограничение (Restriction) (0) – запрещает прохождение через любую часть барьера. Это значение используется по умолчанию.
  • Масштабированная стоимость (Scaled Cost) (1) – Масштабирует импеданс исходных ребер, умножая его на значение свойства ScaledCostFactor. Если ребра частично перекрыты барьером, будет умножаться пропорциональная доля импеданса.

Используйте значение 0 для Ограничения и 1 для Масштабированной стоимости.

ScaledTimeFactor:

Это коэффициент, на который умножается время поездки по улицам, пересекающимся с барьером. Это поле действительно только для барьеров с масштабированной стоимостью, и только если используются единицы измерения времени. Значение поля должно быть больше нуля.

ScaledDistanceFactor:

Это коэффициент, на который умножается длина пути по улицам, пересеченным барьером. Этот атрибут действителен только для барьеров с масштабированной стоимостью, и только если используются единицы измерения расстояния. Значение атрибута должно быть больше нуля.

Feature Set
Time_Attribute
(дополнительно)

Определяет, какой сетевой атрибут стоимости используется, когда значением параметра Единицы измерения является единица времени.

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

Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не Пользовательское значение.

String
Time_Attribute_Units
(дополнительно)

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

Значение этого параметра перезаписывается, если для параметра Travel_Mode не установлено значение CUSTOM.

String
Distance_Attribute
(дополнительно)

Определяет, какой сетевой атрибут стоимости используется, когда значением параметра Единицы измерения является единица расстояния.

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

Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не Пользовательское значение.

String
Distance_Attribute_Units
(дополнительно)

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

Значение этого параметра перезаписывается, если для параметра Travel_Mode не установлено значение CUSTOM.

String
Use_Hierarchy_in_Analysis
(дополнительно)

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

  • True — Использовать иерархию при нахождении маршрутов. Когда используется иерархия, инструмент предпочитает улицы более высокого порядка (такие как скоростные автострады) улицам более низкого порядка (таким как местные дороги) и может использоваться для моделирования предпочтения водителей передвигаться по автострадам, а не местным дорогам, даже если это удлиняет путь. Особенно это относится к тем случаям, когда нужно определить маршруты к удаленным пунктам обслуживания, поскольку водители предпочитают использовать в дальних поездках скоростные автострады без светофоров, перекрестков и поворотов. Использование иерархии ускоряет вычисления, особенно в случае междугородних поездок, поскольку инструмент выбирает лучший маршрут из сравнительно небольшого поднабора улиц.
  • False — Не использовать иерархию при нахождении маршрутов. Если иерархия не используется, инструмент перебирает при определении маршрута все улицы и не отдает предпочтение улицам более высокого порядка. Этот вариант обычно используется при нахождении коротких маршрутов в пределах города.

Параметр не используется, если в наборе сетевых данных, используемом для выполнения анализа, не задан атрибут иерархии. В таких случаях используйте в качестве значения параметра "#".

Вы можете использовать параметр Force_Hierarchy_Beyond_Distance для использования иерархии при нахождении маршрута, даже если для параметра Use_Hierarchy_in_Analysis установлено значение False.

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

Boolean
Restrictions
[restriction,...]
(дополнительно)

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

Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не пользовательское значение.

String
Attribute_Parameter_Values
(дополнительно)

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

Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не пользовательское значение.

Набор записей значений параметра атрибута имеет связанные атрибуты. Ниже приведены поля в таблице атрибутов с описанием.

ObjectID:

Управляемое системой поле ID.

AttributeName:

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

ParameterName:

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

ParameterValue:

Значение, которое вы хотите задать для параметра атрибута. Если значение не указано, для параметра атрибута устанавливается значение NULL.

Record Set
Accumulate_Attributes
[attribute,...]
(дополнительно)

Список атрибутов стоимости, который будет суммироваться во время анализа. Эти кумулятивные атрибуты служат исключительно для справки; механизм расчета использует для нахождения маршрута только атрибут стоимости, определенный параметром Атрибут времени (Time_Attribute в Python) или Атрибут расстояния (Distance_Attribute в Python)

Для каждого кумулятивного атрибута стоимости к выходным маршрутам механизма расчета добавляется свойство Total_[attribute].

String
Maximum_Snap_Tolerance
(дополнительно)

Максимальный допуск замыкания представляет собой самое дальнее расстояние, которое использует Network Analyst для поиска расположения или повторного расположения точки на сети. Выполняется поиск подходящих ребер или соединений, далее выполняется замыкание точки на ближайший объект. Если подходящее положение не было найдено в пределах максимального допуска замыкания, то объект обозначается, как неразмещенный.

Linear unit
Feature_Locator_WHERE_Clause
(дополнительно)

Выражение SQL, используемое для создания поднабора исходных пространственных объектов, определяющего элементы сети, на которых могут быть расположены остановки. Синтаксис данного параметра состоит их двух частей: первая – имя источника класса пространственных объектов (после которого имеется пробел), вторая – выражение SQL. Чтобы записать выражение SQL для двух или более классов пространственных объектов, их необходимо разделить точкой с запятой.

Чтобы пункты обслуживания не располагались на шоссе с ограниченным доступом, например, напишите выражение SQL, аналогичное следующему, с целью исключить такие источники объектов: "Streets" "FUNC_CLASS not in('1', '2')".

Обратите внимание, что барьеры игнорируют Условие Where локатора объектов во время загрузки.

String
Route_Shape
(дополнительно)

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

  • TRUE_LINES_WITHOUT_MEASURES — Возвращает точную геометрию выходного маршрута на основе исходных улиц.
  • TRUE_LINES_WITH_MEASURES — Возвращает точную геометрию выходного маршрута на основе исходных улиц. Кроме того, создает измерения, чтобы геометрию можно было использовать для линейной привязки.
  • STRAIGHT_LINES — Возвращает прямую линию между остановками.
  • NO_LINES — Не возвращает геометрию маршрутов. Это значение можно использовать в тех случаях, когда нужно определить только общую продолжительность или протяженность пути между остановками.

Когда параметр Геометрия маршрута имеет значение Истинная форма, генерализацией формы маршрута можно дополнительно управлять, выбирая значение параметра Допуск упрощения линии маршрута (Route Line Simplification Tolerance).

Независимо от выбранного значения параметра Геометрия маршрута (Route Shape), лучший маршрут определяется всегда на основе минимальной продолжительности или протяженности пути, а не на основе расстояния по прямой между остановками. Это значит, что изменяются только формы маршрута, а не исходные улицы, которые перебирает инструмент при нахождении маршрута.

String
Route_Line_Simplification_Tolerance
(дополнительно)

Определяет степень упрощения геометрии маршрута.

Инструмент игнорирует этот параметр, если для параметра Route_Shape не заданы TRUE_LINES_WITH_MEASURES или TRUE_LINES_WITHOUT_MEASURES.

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

Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не пользовательское значение.

Linear unit
Populate_Directions
(дополнительно)

Укажите, должен ли инструмент создавать путевой лист для каждого маршрута.

  • Checked (True) —Будет создан путевой лист, настроенный в соответствии со значениями параметров Язык путевого листа, Имя стиля путевого листа и Единицы расстояния путевого листа.
  • Unchecked (False) —Путевой лист не создается, инструмент возвращает пустой слой Directions.
Boolean
Populate_Route_Edges
(дополнительно)

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

  • Checked (True) —Построить ребра маршрутов. Выходной слой Route Edges заполняется линейными объектами.
  • Unchecked (False) —Не строить ребра маршрутов. Выходной слой Route Edges возвращается, но не содержит объектов.
Boolean
Populate_Directions
(дополнительно)

Укажите, должен ли инструмент создавать путевой лист для каждого маршрута.

  • Checked (True) —Будет создан путевой лист, настроенный в соответствии со значениями параметров Язык путевого листа, Имя стиля путевого листа и Единицы расстояния путевого листа.
  • Unchecked (False) —Путевой лист не создается, инструмент возвращает пустой слой Directions.
Boolean
Directions_Language
(дополнительно)

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

Этот параметр используется, только если параметр Заполнить путевой лист (Populate Directions) отмечен или имеет значение Истина (True).

Список возможных языков для путевого листа зависит от установленных на вашем компьютере языковых пакетов ArcGIS. Значения имеют вид двух– или пятисимвольных кодов языка, например en для английского языка или zh-CN для упрощенного китайского.

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

String
Directions_Distance_Units
(дополнительно)

Укажите единицы измерения для отображения расстояний в путевом листе. Этот параметр используется, только если параметр Заполнить путевой лист включен или задан как True.

  • Miles
  • Kilometers
  • Meters
  • Feet
  • Yards
  • NauticalMiles
String
Directions_Style_Name
(дополнительно)

Укажите имя стиля форматирования для путевого листа. Этот параметр используется, только если параметр Заполнить путевой лист включен или задан как True. Параметр может принимать следующие значения:

  • NA Desktop — Создает готовый для печати путевой лист от поворота к повороту.
  • NA Navigation — Создает путевой лист со всеми поворотами для автомобильного навигационного устройства.
  • NA Campus —Создает путевой лист для пешеходов, включающий тротуары и проходы внутри зданий.
String
Maximum_Features_Affected_by_Point_Barriers
(дополнительно)

Ограничивает количество объектов, на которые влияют точечные барьеры

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

Значение NULL соответствует отсутствию ограничений.

Long
Maximum_Features_Affected_by_Line_Barriers
(дополнительно)

Ограничивает количество объектов, на которые влияют линейные барьеры

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

Значение NULL соответствует отсутствию ограничений.

Long
Maximum_Features_Affected_by_Polygon_Barriers
(дополнительно)

Ограничивает количество объектов, на которые влияют полигональные барьеры.

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

Значение NULL соответствует отсутствию ограничений.

Long
Maximum_Stops
(дополнительно)

Ограничивает количество остановок, которые можно добавить к анализу маршрута. Этот параметр связан с параметром Остановки (Stops).

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

Значение NULL соответствует отсутствию ограничений.

Long
Maximum_Stops_per_Route
(дополнительно)

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

Остановки предварительно назначены на маршруты при помощи поля RouteName для точек в параметре Остановки.

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

Значение NULL соответствует отсутствию ограничений.

Long
Force_Hierarchy_Beyond_Distance
(дополнительно)

Определяет расстояние, при превышении которого механизм расчета использует иерархию при поиске маршрутов, даже если она не включена. Единицами измерения этого параметра являются единицы, заданные параметром Единицы атрибута расстояния (Distance Attribute Units).

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

Значение NULL означает, что использование иерархии будет определяться только значением параметра Использовать иерархию в анализе (Use Hierarchy in Analysis). Если входной набор сетевых данных не поддерживает иерархию, то указание значения для данного параметра приведет к ошибке. В этом случае необходимо использовать значение NULL.

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

Double
Save_Output_Network_Analysis_Layer
(дополнительно)
  • NO_SAVE_OUTPUT_LAYER —Слой сетевого анализа не включается в выходные данные.
  • SAVE_OUTPUT_LAYER —В выходные данные включается слой сетевого анализа с результатами.

В любом случае будут возвращены классы объектов, содержащие результаты. Администратор сервера может выбрать вывод слоя сетевого анализа, с тем чтобы настройку и результаты работы инструмента можно было отладить с использованием средств управления Network Analyst в среде ArcGIS for Desktop. Это намного упрощает процесс отладки.

В ArcGIS for Desktop выходное местоположение слоя сетевого анализа по умолчанию – это временная папка. Вы можете определить местоположение временной папки по значению arcpy.env.scratchFolder параметра среды геообработки. Выходной слой сетевого анализа хранится в виде LYR-файла, имя которого начинается на _ags_gpna, а затем следует буквенно-числовое значение GUID.

Boolean

Пример кода

FindRoutes, Пример 1

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

stops = arcpy.FeatureSet()
stops.load("Stops")
arcpy.na.FindRoutes(stops, "Miles", "Streets_ND", "in_memory", "Routes", 
                    "RouteEdges", "Directions", "OutStops", 
                    UTurn_Policy="NO_UTURNS")
FindRoutes, Пример 2 (автономный скрипт Python)

Следующий автономный скрипт Python, показывает применение FindRoutes в автономном скрипте.

# Name: FindRoutes_Workflow.py
# Description: Find the fastest route visting all the stops. The output will 
#              show the route, driving directions, and how long it took to get
#              to each stop.
# Requirements: Network Analyst Extension

#Import system modules
import arcpy
from arcpy import env

try:
    #Check out the Network Analyst extension license
    arcpy.CheckOutExtension("Network")

    #Set environment settings
    env.workspace = r'C:\arcgis\ArcTutor\Network Analyst\Tutorial\SanDiego.gdb'
    env.overwriteOutput = True

    #Set local variables
    inNetworkDataset = r'Transportation\Streets_ND'
    inStops = r'Analysis\Stops'
    outGeodatabase = r'C:\arcgis\ArcTutor\Network Analyst\Tutorial\Output.gdb'
    outRoutes = "Routes"
    outRouteEdges = "RouteEdges"
    outDirections = "Directions"
    outStops = "Stops"
    measurement_units = "Minutes"

    # Run FindRoutes. Reorder the stops to find the fastest route, but maintain
    # the first stop as the starting point and the last stop as the end point.
    arcpy.na.FindRoutes(inStops, measurement_units, inNetworkDataset, 
                    outGeodatabase, outRoutes, outRouteEdges, outDirections, 
                    outStops, Reorder_Stops_to_Find_Optimal_Routes=True, 
                    Preserve_Terminal_Stops="PRESERVE_BOTH")

    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 occured on line %i" % tb.tb_lineno
    print str(e)

Параметры среды

  • Текущая рабочая область (Current Workspace)
  • Выходная система координат (Output Coordinate System)

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

  • ArcGIS for Desktop Basic: Требует Network Analyst
  • ArcGIS for Desktop Standard: Требует Network Analyst
  • ArcGIS for Desktop Advanced: Требует Network Analyst

Связанные темы

  • Анализ маршрута
  • Выходные данные инструмента Найти маршруты
Отзыв по этому разделу?

ArcGIS for Desktop

  • На главную
  • Документация
  • Стоимость
  • Поддержка

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог сотрудников
  • Конференция пользователей
  • Саммит разработчиков
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Конфиденциальность | Правовая информация