ネットワークのディゾルブ(Dissolve Network) (Network Analyst)
サマリ
入力ネットワーク データセットの正しいモデリングに必要なライン フィーチャの数を最小にするネットワーク データセットを作成します。効率化された出力ネットワーク データセットにより、解析の実行、結果の描画、およびルート案内の生成に必要な時間が削減されます。このツールは新しいネットワーク データセットとソース フィーチャクラスを出力します。入力ネットワーク データセットとソース フィーチャは変更されません。
[ネットワークのディゾルブ(Dissolve Network)] ツールの詳細図
使用法
-
このツールはネットワークを構築しません。解析を実行する前に新しく作成されたネットワーク データセットを構築するには、[ネットワークの構築(Build Network)] ツールを使用します。
-
出力ジオデータベース ワークスペースに作成されたネットワーク データセットとフィーチャクラスは、入力ネットワーク データセットと同じフィーチャ データセット名、ネットワーク データセット名、およびフィーチャクラス名になります。これらの名前のデータセットがすでに出力ジオデータベース ワークスペースに存在する場合、ツールの実行は失敗します。
-
ネットワーク データセットで使用されるソース フィーチャクラスのフィールドのみ、出力ライン フィーチャクラスに渡されます。次にフィールドの例を示します。
- エレベーション フィールド
- ネットワーク属性エバリュエータで使用されるフィールド(距離、時間、一方通行規制、階層など)
- ルート案内の生成に使用されるフィールド(道路名、標識など)
構文
パラメータ | 説明 | データ タイプ |
in_network_dataset |
ディゾルブするネットワーク データセット。 入力ネットワーク データセットは、ただ 1 つのエッジ ソースを含むファイル ジオデータベース ネットワーク データセットまたはパーソナル ジオデータベース ネットワーク データセットである必要があります。ジャンクション ソースおよびターン ソースの数は自由です。エッジ ソースに必要な項目は以下のとおりです。
入力ネットワーク データセットは、このツールで使用する前に構築する必要があります。 | Network Dataset Layer |
out_workspace_location |
ディゾルブされたネットワーク データセットが作成されるジオデータベース ワークスペース。ワークスペースは ArcGIS 10 以降のジオデータベースでなければならず、入力ネットワーク データセットが配置されているジオデータベースとは別のジオデータベースであることが必要です。 | Workspace |
コードのサンプル
すべてのパラメータを使用してツールを実行します。
import arcpy
arcpy.env.workspace = "C:/ArcTutor/Network Analyst/Tutorial/SanFrancisco.gdb"
arcpy.na.DissolveNetwork("Transportation/Streets_ND","C:/Data/DissolvedNet.gdb")
次のスタンドアロン Python スクリプトは、DissolveNetwork(ネットワークのディゾルブ)ツールを使用してライン フィーチャの数が少ない新しいネットワーク データセットを作成する方法を示しています。
# Name: DissolveNetwork_Workflow.py
# Description: Creates a new network dataset with reduced number of line
# features in a new file geodatabase workspace. After dissolving,
# 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
from arcpy import env
try:
#Check out the Network Analyst extension license
arcpy.CheckOutExtension("Network")
#Set environment settings
env.workspace = "C:/data/SanFrancisco.gdb"
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.management.CreateFileGDB(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.na.DissolveNetwork(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.na.BuildNetwork(dissolvedNetworkDataset)
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)