Построить сеть (Network Analyst)

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

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

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

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

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

    Более подробно об ошибках построении сети

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

Параметры

ПодписьОписаниеТип данных
Входной набор сетевых данных

Создаваемый набор сетевых данных.

Network Dataset Layer

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

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

Обновленный набор сетевых данных.

Слой набора сетевых данных

arcpy.na.BuildNetwork(in_network_dataset)
ИмяОписаниеТип данных
in_network_dataset

Создаваемый набор сетевых данных.

Network Dataset Layer

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

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

Обновленный набор сетевых данных.

Слой набора сетевых данных

Пример кода

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

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

network = "C:/Data/Paris.gdb/Transportation/ParisMultimodal_ND"
arcpy.na.BuildNetwork(network)
BuildNetwork, пример 2 (автономный скрипт)

Следующий скрипт Python является примером использования инструмента BuildNetwork в автономном скрипте.

# Name: BuildNetwork_ex02.py
# Description: Build a network dataset.
# Requirements: Network Analyst Extension 

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

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
    env.workspace = "C:/data/SanFrancisco.gdb"
    
    #Set local variables
    inNetworkDataset = "Transportation/Streets_ND"
    
    #Build the network dataset
    arcpy.BuildNetwork_na(inNetworkDataset)
    
    #If there are any build errors, they are recorded in a BuildErrors.txt file
    #present in the system temp directory. So copy this file to the directory
    #containing this script
    
    #First get the path to the system temp directory
    tempDir = os.environ.get("TEMP")
    if tempDir:
        shutil.copy2(os.path.join(tempDir,"BuildErrors.txt"),sys.path[0])
    
    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))

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

  • Basic: Обязательно Network Analyst
  • Standard: Обязательно Network Analyst
  • Advanced: Обязательно Network Analyst

Связанные разделы