テンプレートからネットワーク データセットを作成 (Create Network Dataset From Template) (Network Analyst)

サマリー

入力テンプレート ファイル (*.xml) に格納されているスキーマを使用して、新規のネットワーク データセットを作成します。このツールを実行する前に、ネットワーク データセットの作成に必要なフィーチャクラスと入力テーブルをすべて用意しておく必要があります。

使用法

パラメーター

ラベル説明データ タイプ
ネットワーク データセット テンプレート

[ネットワーク データセットからテンプレートを作成 (Create Template From Network Dataset)] ツールで作成されたテンプレート ファイル (*.xml)。このファイルには、作成される出力ネットワーク データセットのスキーマが格納されています。

File
出力フィーチャ データセット

作成したネットワーク データセットに挿入される、フィーチャクラスを含むフィーチャ データセット。ネットワークは、ネットワーク データセット テンプレートに指定された名前でこのデータセット内に作成されます。

Feature Dataset

派生した出力

ラベル説明データ タイプ
出力ネットワーク

テンプレート ファイルに格納されているスキーマを含む、新規のネットワーク データセット。

ネットワーク データセット

arcpy.na.CreateNetworkDatasetFromTemplate(network_dataset_template, output_feature_dataset)
名前説明データ タイプ
network_dataset_template

[ネットワーク データセットからテンプレートを作成 (Create Template From Network Dataset)] ツールで作成されたテンプレート ファイル (*.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)
CreateNetworkDatasetFromTemplate (テンプレートからネットワーク データセットを作成) の例 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

関連トピック