Создать набор сетевых данных из шаблона (Network Analyst)

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

Создает новый сетевой набор со схемой, которая содержится во входном файле шаблона (.xml). Все классы объектов и входные таблицы, необходимые для создания набора сетевых данных, должны существовать в момент выполнения инструмента.

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

  • Этот инструмент создает новый сетевой набор, используя схему из входного файле шаблона. Используйте инструмент Создать шаблон из набора сетевых данных, чтобы создать схему для нового сетевого набора. Название выходного набора сетевых данных задано во входном файле шаблона.

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

Параметры

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

Файл шаблона (.xml), созданный инструментом Создать шаблон из набора сетевых данных, содержащий схему выходного набора сетевых данных.

File
Выходной набор классов объектов

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

Feature Dataset

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

ПодписьОписаниеТип данных
Выходная сеть

Новый набор сетевых данных со схемой, которая содержится в файле шаблона.

Набор сетевых данных

arcpy.na.CreateNetworkDatasetFromTemplate(network_dataset_template, output_feature_dataset)
ИмяОписаниеТип данных
network_dataset_template

Файл шаблона (.xml), созданный инструментом Создать шаблон из набора сетевых данных, содержащий схему выходного набора сетевых данных.

File
output_feature_dataset

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

Feature Dataset

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

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

Новый набор сетевых данных со схемой, которая содержится в файле шаблона.

Набор сетевых данных

Пример кода

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

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

new_network_location = "C:/data/NewNetwork.gdb/Transportation"
xml_template = "C:/data/NDTemplate.xml"
arcpy.na.CreateNetworkDatasetFromTemplate(new_network_location, xml_template)
CreateNetworkDatasetFrom Template, пример 2 (автономный скрипт)

Следующий автономный скрипт Python демонстрирует порядок применения инструмента CreateNetworkDatasetFromTemplate для создания нового набора сетевых данных из имеющегося шаблона.

# Name: NetworkDatasetTemplate_workflow.py
# Description: Create a new network dataset with the same schema as an existing
#               network dataset
# Requirements: Network Analyst Extension

#Import system modules
import arcpy
import os

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 local variables
    original_network = "C:/data/Region1.gdb/Transportation/Streets_ND"
    new_network_location = "C:/data/Region2.gdb/Transportation"
    xml_template = "C:/data/NDTemplate.xml"
    
    #Create an XML template from the original network dataset
    arcpy.na.CreateTemplateFromNetworkDataset(original_network, xml_template)

    #Create the new network dataset in the output location using the template.
    #The output location must already contain feature classes and tables with 
    #the same names and schema as the original network.
    arcpy.na.CreateNetworkDatasetFromTemplate(xml_template,
                                                new_network_location)
    
    #Build the new network dataset
    arcpy.na.BuildNetwork(os.path.join(new_network_location, "Streets_ND"))

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

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