ネットワークのディゾルブ (Dissolve Network) (Network Analyst)

サマリー

入力ネットワーク データセットの正しいモデリングに必要なライン フィーチャの数を最小にするネットワーク データセットを作成します。効率化された出力ネットワーク データセットにより、解析の実行、結果の描画、およびルート案内の生成に必要な時間が削減されます。このツールは新しいネットワーク データセットとソース フィーチャクラスを出力します。入力ネットワーク データセットとソース フィーチャは変更されません。

[ネットワークのディゾルブ (Dissolve Network)] ツールの詳細

ネットワークのディゾルブの図

使用法

  • このツールはネットワークを構築しません。解析を実行する前に新しく作成されたネットワーク データセットを構築するには、[ネットワークの構築 (Build Network)] ツールを使用します。

  • 出力ジオデータベース ワークスペースに作成されたネットワーク データセットとフィーチャクラスは、入力ネットワーク データセットと同じフィーチャ データセット名、ネットワーク データセット名、およびフィーチャクラス名になります。これらの名前のデータセットがすでに出力ジオデータベース ワークスペースに存在する場合、ツールの実行は失敗します。

  • ネットワーク データセットで使用されるソース フィーチャクラスのフィールドのみ、出力ライン フィーチャクラスに渡されます。次にフィールドの例を示します。

    • エレベーション フィールド
    • ネットワーク属性エバリュエーターで使用されるフィールド (距離、時間、一方通行規制、階層など)
    • ルート案内の生成に使用されるフィールド (道路名、標識など)
  • ディゾルブされるネットワーク データセットに 10.1 の機能が含まれていない場合は、10.0 のネットワーク データセットが作成されます。

パラメーター

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

ディゾルブするネットワーク データセット。

入力ネットワーク データセットは、ただ 1 つのエッジ ソースを含むファイル ジオデータベース ネットワーク データセットまたはパーソナル ジオデータベース ネットワーク データセットである必要があります。ジャンクション ソースおよびターン ソースの数は自由です。エッジ ソースに必要な項目は以下のとおりです。

  • 終点 (End Point) の接続性ポリシー
  • エレベーション ポリシー (なし、またはエレベーション フィールドによるポリシー)

入力ネットワーク データセットは、このツールで使用する前に構築する必要があります。

Network Dataset Layer
出力ジオデータベース ワークスペース

ディゾルブされたネットワーク データセットが作成されるジオデータベース ワークスペース。ワークスペースは ArcGIS 10 以降のジオデータベースでなければならず、入力ネットワーク データセットが配置されているジオデータベースとは別のジオデータベースであることが必要です。

Workspace

派生した出力

ラベル説明データ タイプ
ディゾルブされたネットワーク データセットの出力

ライン フィーチャが少ないネットワーク データセットは、ネットワーク解析がより迅速に行われます。

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

arcpy.management.DissolveNetwork(in_network_dataset, out_workspace_location)
名前説明データ タイプ
in_network_dataset

ディゾルブするネットワーク データセット。

入力ネットワーク データセットは、ただ 1 つのエッジ ソースを含むファイル ジオデータベース ネットワーク データセットまたはパーソナル ジオデータベース ネットワーク データセットである必要があります。ジャンクション ソースおよびターン ソースの数は自由です。エッジ ソースに必要な項目は以下のとおりです。

  • 終点 (End Point) の接続性ポリシー
  • エレベーション ポリシー (なし、またはエレベーション フィールドによるポリシー)

入力ネットワーク データセットは、このツールで使用する前に構築する必要があります。

Network Dataset Layer
out_workspace_location

ディゾルブされたネットワーク データセットが作成されるジオデータベース ワークスペース。ワークスペースは ArcGIS 10 以降のジオデータベースでなければならず、入力ネットワーク データセットが配置されているジオデータベースとは別のジオデータベースであることが必要です。

Workspace

派生した出力

名前説明データ タイプ
out_network_dataset

ライン フィーチャが少ないネットワーク データセットは、ネットワーク解析がより迅速に行われます。

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

コードのサンプル

DissolveNetwork (ネットワークのディゾルブ) の例 1 (Python ウィンドウ)

すべてのパラメーターを使用してツールを実行します。

network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
out_gdb = "C:/Data/DissolvedNetwork.gdb"
arcpy.na.DissolveNetwork(network, out_gdb)
DissolveNetwork (ネットワークのディゾルブ) の例 2 (ワークフロー)

次のスタンドアロン Python スクリプトは、DissolveNetwork (ネットワークのディゾルブ) ツールを使用してライン フィーチャの数が少ない新しいネットワーク データセットを作成する方法を示しています。

# Name: DissolveNetwork_Workflow.py
# Description: Creates a new network dataset with reduced number of line
#              features in a new file geodatabase workspace. The network dataset
#              is also built so that it can be used to perform network analyses.
# Requirements: Network Analyst Extension

#Import system modules
import arcpy

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
    arcpy.env.workspace = "C:/data/SanFrancisco.gdb"
    arcpy.env.overwriteOutput = True

    #Set local variables
    inNetworkDataset = "Transportation/Streets_ND"
    outFolder = "C:/data/output"
    outputGDBName = "SanFranciscoDissolved"

    #Create a new file geodatabase that will contain the dissolved network
    result = arcpy.CreateFileGDB_management(outFolder, outputGDBName)

    #Get the path to the newly created file gdb from the result object.
    outputGDB = result.getOutput(0)

    #Dissolve the network dataset
    result = arcpy.DissolveNetwork_na(inNetworkDataset, outputGDB)

    #Get the path to the dissolved network dataset from the result object
    dissolvedNetworkDataset = result.getOutput(0)

    #The dissolved network dataset is unbuilt. So build the network dataset
    arcpy.BuildNetwork_na(dissolvedNetworkDataset)

    print("Script completed successfully")

except Exception as e:
    print(e)