ルート案内(Directions) (Network Analyst)

ライセンス レベル:BasicStandardAdvanced

サマリ

ルートに基づいて、ネットワーク解析レイヤから詳細なルート案内を生成します。ルート案内は、テキスト形式、XML 形式、または HTML 形式のファイルに書き込むことができます。適切なスタイルシートを用意すれば、ルート案内は他の任意のファイル形式に書き込むことができます。

使用法

構文

Directions_na (in_network_analysis_layer, file_type, out_directions_file, report_units, {report_time}, {time_attribute}, {language}, {style_name}, {stylesheet})
パラメータ説明データ タイプ
in_network_analysis_layer

ルート案内を生成するネットワーク解析レイヤ。ルート案内は、ルート、最寄り施設、および配車ルート ネットワーク解析レイヤに対してのみ生成することができます。

Network Analyst Layer
file_type

出力されるルート案内ファイルの形式。[スタイルシート] パラメータが値を持つ場合、このパラメータは無視されます。

  • XML出力のルート案内ファイルは XML ファイルとして生成されます。ファイルにはルート案内用文字列およびルートの距離、時間の情報とは別に、移動方向タイプおよび各方向のターン角度に関する情報も含まれます。
  • TEXT出力のルート案内ファイルはルート案内用文字列、ルートの距離、時間(オプション)の情報を含む単純なテキスト ファイルとして生成されます。
  • HTML出力のルート案内ファイルはルート案内用文字列、ルートの距離、時間(オプション)の情報を含む HTML ファイルとして生成されます。
String
out_directions_file

書き込みが行われるルート案内ファイルの絶対パス。

[スタイルシート] パラメータにスタイルシートを指定する場合は、出力ルート案内ファイルのファイル接尾辞が、スタイルシートが生成するファイル タイプに一致することを確認してください。

File
report_units

ルート案内ファイルで距離の情報を出力する際の距離単位を指定します。たとえば、インピーダンスがメートル単位の場合でも、ルート案内をマイル単位で表示することができます。

  • フィート
  • ヤード
  • マイル
  • メートル
  • キロメートル
  • 海里マイル
String
report_time
(オプション)
  • NO_REPORT_TIMEルート案内ファイルに移動時間を出力しません。
  • REPORT_TIMEルート案内ファイルに移動時間を出力します。デフォルト設定。
Boolean
time_attribute
(オプション)

ルート案内の移動時間を提供する時間ベースのコスト属性。入力ネットワーク解析レイヤで使用されるネットワーク データセットには、コスト属性が必ず存在する必要があります。

String
language
(オプション)

ルート案内を生成するときの言語を選択します。ドロップダウン リストに表示される言語は、コンピュータにインストールされている ArcGIS 言語パックに依存します。

このツールをサービスの一部として別のサーバ上で公開する予定の場合、ツールが正しく機能するためには、選択する言語に対応する ArcGIS 言語パックがそのサーバ上にインストールされている必要があります。また、言語パックがコンピュータ上にインストールされていない場合、その言語はドロップダウン リストに表示されませんが、選択する代わりに言語コードを入力することができます。

String
style_name
(オプション)

ルート案内の書式スタイルの名前を選択します。

  • NA Desktop印刷可能な詳細なルート案内
  • NA Navigation車載ナビゲーション デバイス用に設計された詳細なルート案内
  • NA Campus歩行者ルート用に設計された詳細な歩行ルート案内
String
stylesheet
(オプション)

指定された形式の出力ファイル タイプ(PDF、Word、または HTML ファイルなど)を生成するためのスタイルシート。[出力ルート案内ファイル] パラメータのファイル接尾辞は、スタイルシートが生成するファイル タイプに一致している必要があります。[スタイルシート] が値を持つ場合、[ルート案内(Directions)] ツールは [出力ルート案内ファイル] パラメータをオーバーライドします。

ヒントヒント:

独自のテキストおよび HTML スタイルシートの作成をスムーズに開始したい場合は、Network Analyst が使用するスタイルシートをコピーして編集します。それらのスタイルシートは、[ArcGIS インストール ディレクトリ]\ArcGIS\Desktop10.1\NetworkAnalyst\Directions\Styles ディレクトリにあります。HTML スタイルシートは Dir2PHTML.xsl、テキスト スタイルシートは Dir2PlainText.xsl です。

File

コードのサンプル

Directions(ルート案内)の例 1(Python ウィンドウ)

すべてのパラメータを付与して、Directions(ルート案内)ツールを実行します。

import arcpy
arcpy.na.Directions("Route","TEXT","C:/temp/Route_Directions.txt","Miles",
                    "REPORT_TIME","Minutes")
Directions(ルート案内)の例 2(ワークフロー)

次のスタンドアロン Python スクリプトは、Directions(ルート案内)ツールを使用してルートの道順案内を HTML ファイルで生成する方法を示しています。

# Name: Directions_Workflow.py
# Description: Generate driving directions in a html file for a route that 
#              visits the store locations in the best sequence that minimizes 
#              the total travel time
# 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"
    outNALayerName = "StoreRoute"
    impedanceAttribute = "TravelTime"
    startLocation = "Analysis/DistributionCenter"
    storeLocations = "Analysis/Stores"
    #fieldMappings = "Name Name #; Attr_TravelTime ServiceTime #"
    outDirectionsFile = "C:/data/output" + "/" + outNALayerName + "Directions.html"
    outLayerFile = "C:/data/output" + "/" + outNALayerName + ".lyr"
    
    #Create a new route layer. The route starts at the distribution center and 
    #takes the best sequence to visit the store locations.
    outNALayer = arcpy.na.MakeRouteLayer(inNetworkDataset, outNALayerName,
                                         impedanceAttribute, "FIND_BEST_ORDER",
                                         "PRESERVE_FIRST","",['Meters'],
                                         "NO_UTURNS",start_date_time="8 AM")
    
    #Get the layer object from the result object. The route layer can 
    #now be referenced using the layer object.
    outNALayer = outNALayer.getOutput(0)
    
    #Get the names of all the sublayers within the route layer.
    subLayerNames = arcpy.na.GetNAClassNames(outNALayer)
    #Stores the layer names that we will use later
    stopsLayerName = subLayerNames["Stops"]
    
    #Load the distribution center as the start location using default field 
    #mappings and search tolerance
    arcpy.na.AddLocations(outNALayer,stopsLayerName,startLocation,"","",
                          exclude_restricted_elements = "EXCLUDE")
    
    #Load the store locations as stops. Make sure the store locations are 
    #appended to the Stops sublayer which already contains the distribution 
    #center location. Map the Attr_TravelTime property from the ServiceTime 
    #field so that the total travel time for the route will also contain the 
    #service time using the field mappings
    fieldMappings = arcpy.na.NAClassFieldMappings(outNALayer, stopsLayerName)
    fieldMappings["Name"].mappedFieldName = "Name"
    fieldMappings["Attr_" + impedanceAttribute].mappedFieldName = "ServiceTime"
    arcpy.na.AddLocations(outNALayer, stopsLayerName, storeLocations,
                          fieldMappings, "", append="APPEND",
                          exclude_restricted_elements = "EXCLUDE")
    
    #Generate driving directions in a HTML file
    arcpy.na.Directions(outNALayer,"HTML",outDirectionsFile,"Miles",
                        "REPORT_TIME",impedanceAttribute)
    
    #Save the solved na layer as a layer file on disk using relative paths
    arcpy.SaveToLayerFile_management(outNALayer,outLayerFile,"RELATIVE")
    
    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)

環境

関連トピック

ライセンス情報

ArcGIS for Desktop Basic: 次のものが必要 Network Analyst
ArcGIS for Desktop Standard: 次のものが必要 Network Analyst
ArcGIS for Desktop Advanced: 次のものが必要 Network Analyst
9/14/2013