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 Closest Facilities) и Создать слой ближайших пунктов обслуживания (Make Closest Facility Layer) похожи, но предназначены для различных целей. Используйте при настройке сервиса геообработки Найти ближайшие пункты обслуживания (Find Closest Facilities); это упрощает процесс настройки. Либо воспользуйтесь инструментом Создать слой ближайших пунктов обслуживания (Make Closest Facility Layer).

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

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

  • После создания слоя анализа при помощи данного инструмента, вы можете добавлять в него объекты сетевого анализа при помощи инструмента Добавить положения, выполнять анализ при помощи инструмента Расчет и сохранять результаты на диске при помощи инструмента Сохранить в файл слоя.

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

Синтаксис

MakeClosestFacilityLayer_na (in_network_dataset, out_network_analysis_layer, impedance_attribute, {travel_from_to}, {default_cutoff}, {default_number_facilities_to_find}, {accumulate_attribute_name}, {UTurn_policy}, {restriction_attribute_name}, {hierarchy}, {hierarchy_settings}, {output_path_shape}, {time_of_day}, {time_of_day_usage})
ПараметрОбъяснениеТип данных
in_network_dataset

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

Network Dataset Layer
out_network_analysis_layer

Имя создаваемого слоя ближайшего пункта обслуживания.

String
impedance_attribute

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

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

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

  • TRAVEL_FROM —Направление движения от пункта обслуживания к инциденту.
  • TRAVEL_TO —Направление движения от инцидента к пункту обслуживания.

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

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

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

Значение импеданса по умолчанию, при котором следует прекратить поиск пунктов обслуживания для данного инцидента. Значение по умолчанию можно переопределить с помощью ограничения импеданса для инцидентов при использовании параметра TRAVEL_TO или с помощью ограничения импеданса для пунктов обслуживания при использовании параметра TRAVEL_FROM.

Double
default_number_facilities_to_find
(дополнительно)

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

Long
accumulate_attribute_name
[accumulate_attribute_name,...]
(дополнительно)

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

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

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

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

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

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

String
restriction_attribute_name
[restriction_attribute_name,...]
(дополнительно)

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

String
hierarchy
(дополнительно)
  • USE_HIERARCHY — Для анализа используется атрибут иерархии. Применение иерархии приводит при расчете к предпочтению ребер высшего порядка по сравнению с ребрами низшего порядка. Расчеты с иерархией выполняются быстрее, и они могут использоваться для моделирования предпочтений водителя, который скорее выберет для проезда автостраду, нежели местную дорогу – даже если это приведет к увеличению длины пути. Данная опция доступна, если входной набор сетевых данных имеет атрибут иерархии.
  • NO_HIERARCHY —Для анализа атрибут иерархии не используется. Расчет без применения иерархии дает точный маршрут для набора сетевых данных.

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

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

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

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

Network Analyst Hierarchy Settings
output_path_shape
(дополнительно)

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

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

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

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

Указывает время и дату начала или окончания маршрутов. Интерпретация этого значения зависит от того, какой параметр задан – START_TIME или END_TIME.

Если выбран атрибут импеданса на основе трафика, то решение будет создано с учетом заданных динамических условий трафика в указанное время суток. Дату и время можно указать в виде 5/14/2012 10:30 AM.

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

  • Сегодня – 30.12.1899
  • Воскресенье – 31.12.1899
  • Понедельник – 01.01.1900
  • Вторник – 02.01.1900
  • Среда – 03.01.1900
  • Четверг – 04.01.1900
  • Пятница – 05.01.1900
  • Суббота – 06.01.1900
Например, чтобы указать, что маршрут должен начинаться в 17:00 во вторник, следует указать значение параметра, равное 02.01.1900 17:00.

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

Определяет, что указывает параметр «Время суток» (Time of Day) – прибытие или отправление.

  • START_TIME —Время суток интерпретируется как время отправления из пункта обслуживания или с места инцидента.Если выбран параметр START_TIME, время суток указывает на то, что решатель должен выбрать лучший маршрут с учетом времени отправления. Если значение параметра Время суток (Time of Day) не указано, можно выбрать NOT_USED.
  • END_TIME —Время суток интерпретируется как время прибытия в пункт обслуживания или на место инцидента. Этот параметр полезен, если необходимо знать время отправления, чтобы успеть в пункт назначения к определенному времени.
  • NOT_USED —Если время суток не указано, единственным вариантом остается NOT_USED. Если время суток указано, параметр NOT_USED недоступен.
String

Пример кода

MakeClosestFacilityLayer, пример 1 (окно Python)

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

network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.MakeClosestFacilityLayer(network, "ClosestFireStations", "TravelTime")
MakeClosestFacilityLayer, пример 2 (окно Python)

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

network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.MakeClosestFacilityLayer(network, "ClosestHospitals", "TravelTime",
                                    "TRAVEL_TO", 5 ,3, ["Meters", "TravelTime"],
                                    "ALLOW_UTURNS", ["Oneway"], "USE_HIERARCHY",
                                    "", "TRUE_LINES_WITH_MEASURES")
MakeClosestFacilityLayer, пример 3 (рабочий процесс)

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

# Name: MakeClosestFacilityLayer_Workflow.py
# Description: Find the closest warehouse from the store locations and save the
#              results to a layer file on disk.
# Requirements: Network Analyst Extension

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

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

    #Set environment settings
    env.workspace = r"C:/data/Paris.gdb"
    env.overwriteOutput = True

    #Set local variables
    inNetworkDataset = r"Transportation/ParisMultimodal_ND"
    outNALayerName = "ClosestWarehouse"
    impedanceAttribute = "Drivetime"
    accumulateAttributeName = ["Meters"]
    inFacilities = r"Analysis/Warehouses"
    inIncidents = r"Analysis/Stores"
    outLayerFile = os.path.join(r"C:/data/output", outNALayerName + ".lyr")

    #Create a new closest facility analysis layer. Apart from finding the drive
    #time to the closest warehouse, we also want to find the total distance. So
    #we will accumulate the "Meters" impedance attribute.
    NAResultObject = arcpy.na.MakeClosestFacilityLayer(inNetworkDataset,outNALayerName,
                                                   impedanceAttribute,"TRAVEL_TO",
                                                   "",1, accumulateAttributeName,
                                                   "NO_UTURNS")

    #Get the layer object from the result object. The closest facility layer can
    #now be referenced using the layer object.
    outNALayer = NAResultObject.getOutput(0)

    #Get the names of all the sublayers within the closest facility layer.
    subLayerNames = arcpy.na.GetNAClassNames(outNALayer)
    #Stores the layer names that we will use later
    facilitiesLayerName = subLayerNames["Facilities"]
    incidentsLayerName = subLayerNames["Incidents"]

    #Load the warehouses as Facilities using the default field mappings and
    #search tolerance
    arcpy.na.AddLocations(outNALayer, facilitiesLayerName, inFacilities, "", "")

    #Load the Stores as Incidents. Map the Name property from the NOM field
    #using field mappings
    fieldMappings = arcpy.na.NAClassFieldMappings(outNALayer, incidentsLayerName)
    fieldMappings["Name"].mappedFieldName = "NOM"
    arcpy.na.AddLocations(outNALayer, incidentsLayerName, inIncidents,
                          fieldMappings,"")

    #Solve the closest facility layer
    arcpy.na.Solve(outNALayer)

    #Save the solved closest facility layer as a layer file on disk with
    #relative paths
    arcpy.management.SaveToLayerFile(outNALayer,outLayerFile,"RELATIVE")

    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)

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

  • ArcGIS for Desktop Basic: Да
  • ArcGIS for Desktop Standard: Да
  • ArcGIS for Desktop Advanced: Да

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

  • Анализ ближайшего пункта обслуживания
  • О сетевом анализе с использованием иерархии
  • Обзор набора инструментов «Анализ» (Analysis)
  • Что такое слои сетевого анализа?
Отзыв по этому разделу?

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. | Конфиденциальность | Правовая информация