概要
ルートを検索する解析は、地点間を最短時間または最短距離で移動する方法を判断することを意味します。このツールを使用すると、複数のストップを訪問するルート案内を生成したり、地点間の距離や移動時間を計測したりできます。このツールは 1 回の実行で、1 台以上の車両のルートを検索できます。そのため、事前に割り当てられたストップを複数の運転者が訪問するための最適なルートを判断したり、多数の通勤者の自宅から職場までの移動距離を 1 回の解析で計測したりできます。
図
使用法
- 複数の車両のルートを検索するには、[ストップ] パラメーターで説明されている RouteName 属性をご参照ください。多数の車両のルートを検索する場合は、解析前に、一連のストップをルートごとに小さなサブセットにグループ化しておく必要があります。ルートは、ストップのサブセットごとに生成されます (ストップのグループ化やストップ間のルート検索を最適化する場合は、代わりに配車ルート解析ツールを使用します)。
このツール ダイアログ ボックスの各種オプション パラメーターは、管理しやすいように次の 6 つのカテゴリに分類されています。
- 高度な解析
- バリア
- カスタム移動モード
- ネットワーク データセット
- ネットワーク ロケーション
- 出力
- サービスのケーパビリティ
構文
arcpy.na.FindRoutes(Stops, Measurement_Units, Network_Dataset, Output_Geodatabase, Output_Routes_Name, Output_Route_Edges_Name, Output_Directions_Name, Output_Stops_Name, {Reorder_Stops_to_Find_Optimal_Routes}, {Preserve_Terminal_Stops}, {Return_to_Start}, {Use_Time_Windows}, {Time_of_Day}, {Time_Zone_for_Time_of_Day}, {UTurn_Policy}, {Point_Barriers}, {Line_Barriers}, {Polygon_Barriers}, {Time_Attribute}, {Time_Attribute_Units}, {Distance_Attribute}, {Distance_Attribute_Units}, {Use_Hierarchy_in_Analysis}, {Restrictions}, {Attribute_Parameter_Values}, {Accumulate_Attributes}, {Maximum_Snap_Tolerance}, {Feature_Locator_WHERE_Clause}, {Route_Shape}, {Route_Line_Simplification_Tolerance}, {Populate_Route_Edges}, {Populate_Directions}, {Directions_Language}, {Directions_Distance_Units}, {Directions_Style_Name}, {Maximum_Features_Affected_by_Point_Barriers}, {Maximum_Features_Affected_by_Line_Barriers}, {Maximum_Features_Affected_by_Polygon_Barriers}, {Maximum_Stops}, {Maximum_Stops_per_Route}, {Force_Hierarchy_Beyond_Distance}, {Save_Output_Network_Analysis_Layer}, {Travel_Mode}, {Time_Zone_for_Time_Windows}, {Overrides}, {Save_Route_Data})
パラメーター | 説明 | データ タイプ |
Stops | このツールは、このパラメーターで指定されたストップ間のルートを検索します。解析を実行するには、少なくとも 2 つのストップが必要です。 ストップを指定する際は、属性を使用してストップごとにプロパティ (名前やサービス時間) を設定できます。ストップには、次の属性を指定できます。 OBJECTID - システムで管理される ID フィールド。 SHAPE - インシデントの地理的位置を示すジオメトリ フィールド。 Name - ストップの名前。この名前は、ルート案内に使用されます。名前を指定しない場合は、出力ストップ、ルート、およびルート案内において接頭辞 Location が付いた一意な名前が自動的に生成されます。 RouteName - ストップが割り当てられるルートの名前。同じルート名を異なるストップに割り当てると、それらのストップがグループ化され、同じルートで訪問されるようになります。一意のルート名をストップの異なるグループに割り当てることで、1 回の解析で多くのルートを生成できます。このツールでは、最大 150 のストップを 1 つのルートにグループ化できます。 Sequence - 出力ルートは、この属性で指定した順序でストップを訪問します。ルート名の値が同じストップのグループ内では、シーケンス値は 0 より大きく、ストップの合計数以下である必要があります。また、シーケンス値は重複してはなりません。 [ストップを並べ替えて最適ルートを検出] をオン (True) にすると、各ルート名の最初と最後の値を除くすべての値が無視されるため、ツールは、各ルートの全体の移動を最小化する順序を見つけることができます ([ストップの順番を維持] および [スタートに戻る] の設定は、各ルートの最初と最後の値を無視するかどうかを決定します)。 AdditionalTime - ストップで費やされる時間の長さ。これは、ルートの合計時間に追加されます。この属性値の単位は、[計測単位] パラメーターで指定されます。計測単位が時間ベースである場合に限り、この属性値が解析に含められます。デフォルト値は 0 です。 通常、ストップの場所 (家など) は厳密には道路に接していません。道路から多少離れて配置されています。ストップの実際の場所と道路に接した場所の間の距離を合計移動距離に含めることが重要である場合は、この属性値を使用してその距離をモデル化できます。 AdditionalDistance - ストップで移動する追加の距離。これは、ルートの合計距離に追加されます。この属性値の単位は、[計測単位] パラメーターで指定されます。計測単位が距離ベースである場合に限り、この属性値が解析に含められます。デフォルト値は 0 です。 通常、ストップの場所 (家など) は厳密には道路に接していません。道路から多少離れて配置されています。ストップの実際の場所と道路に接した場所の間の距離を合計移動距離に含めることが重要である場合は、この属性値を使用してその距離をモデル化できます。 TimeWindowStart - ストップに訪問できる最も早い時刻。この値は、2015/8/12 12:15 PM のように日時で指定してください。ストップのタイム ウィンドウの開始時間と終了時間を指定することで、ルートでストップを訪問する時刻を定義します。[タイム ウィンドウを使用] がオンで、[使用する単位] に時間ベースを選択している限り、ツールは全体の移動を最小化し、指定のタイム ウィンドウ内にストップに到着するソリューションを解析します。 解析が複数のタイム ゾーンにまたがる場合、タイム ウィンドウ値はそのストップが属しているタイム ゾーンの日時を表します。 このフィールドには NULL 値を含めることができます。NULL 値は、TimeWindowEnd 属性で指定された値より前の任意の時間に到着できることを示しています。TimeWindowEnd も NULL 値である場合は、ストップに任意の時間に訪問できます。 TimeWindowEnd - ストップに訪問できる最も遅い時刻。この値は、2015/8/12 12:15 PM のように日時で指定してください。ストップのタイム ウィンドウの開始時間と終了時間を指定することで、ルートでストップを訪問する時刻を定義します。[タイム ウィンドウを使用] がオンで、[使用する単位] に時間ベースを選択している限り、ツールは全体の移動を最小化し、指定のタイム ウィンドウ内にストップに到着するソリューションを解析します。 解析が複数のタイム ゾーンにまたがる場合、タイム ウィンドウ値はそのストップが属しているタイム ゾーンの日時を表します。 このフィールドには NULL 値を含めることができます。NULL 値は、TimeWindowStart 属性で指定された値より後の任意の時間に到着できることを示しています。TimeWindowStart も NULL 値である場合は、ストップに任意の時間に訪問できます。 CurbApproach - 車両がストップに到着する方向およびストップから出発する方向を指定します。このフィールド値は、次のいずれかの整数として指定されます (括弧で囲まれた名前ではなく、数値コードを使用します)。
CurbApproach プロパティは、米国の右側通行の標準と英国の左側通行の標準の両方に対応するように設計されています。まず、ストップが車両の左側にあるとします。これは、車両が移動するのが道路の左側であるか右側であるかに関係なく、常に左側にあります。右側通行か左側通行かに応じて異なるのは、2 つの方向のうちどちらからストップに到着するかです。つまり、結局のところ車両の右側または左側になります。たとえば、ストップに到着するときに、車両とストップの間に交通レーンがないほうがいい場合は、米国では [車両の右側] (1) を選択し、英国では [車両の左側] (2) を選択します。 | Feature Set |
Measurement_Units | 出力ルートの合計移動時間または合計距離を計測およびレポートするときに使用される単位を指定します。 このパラメーターに選択する単位によって、最適なルートを検出するときに距離が計測されるか、時間が計測されるかが決まります。選択した移動モード (運転時間、歩行時間など) での移動時間を最小にするには、時間単位を選択します。指定した移動モードでの移動距離を最短にするには、距離単位を選択します。結果にレポートされる合計時間または合計距離の単位も、この選択によって決まります。これには次の選択肢があります。
このツールでは、選択した計測単位が時間ベースか距離ベースかに応じて、[時間属性] パラメーターに指定したネットワーク コスト属性を使用するか、[距離属性] パラメーターに指定したネットワーク コスト属性を使用するかが選択されます。 対応する時間または距離のコスト属性の単位と [計測単位] の値が異なる場合は、ツールによって必要な単位変換が実行されます。 | String |
Network_Dataset | 解析が実行されるネットワーク データセット。ほとんどの場合、ネットワーク データセットは道路ネットワークを表しますが、他の種類の交通ネットワークを表すこともあります。ネットワーク データセットには、少なくとも 1 つの時間ベースのコスト属性と 1 つの距離ベースのコスト属性が必要です。 | Network Dataset Layer |
Output_Geodatabase | 出力ワークスペースです。このワークスペースはすでに存在している必要があります。デフォルトの出力ワークスペースは、in_memory です。 | Workspace |
Output_Routes_Name | ストップを接続するルートまたはラインを含む出力フィーチャクラスの名前。このフィーチャクラスには、属性、合計移動時間または距離も含まれています。 「ルートの検索 (Find Routes) における出力」では、この出力フィーチャクラスのスキーマが説明されています。 | String |
Output_Route_Edges_Name | ルート エッジ含む出力フィーチャクラスの名前。ルート エッジは、ルートが通過する個別の道路フィーチャを表します。 「ルートの検索 (Find Routes) における出力」では、この出力フィーチャクラスのスキーマが説明されています。 | String |
Output_Directions_Name | ルート案内を含む出力フィーチャクラスの名前。 「ルートの検索 (Find Routes) における出力」では、この出力フィーチャクラスのスキーマが説明されています。 | String |
Output_Stops_Name | 出力ストップを含む出力フィーチャクラスの名前。 「ルートの検索 (Find Routes) における出力」では、この出力フィーチャクラスのスキーマが説明されています。 | String |
Reorder_Stops_to_Find_Optimal_Routes (オプション) | 定義した順序、またはツールが全体の移動を最小化すると判断した順序のどちらでストップに訪問するかを指定します。
最適なストップ順序と最適なルートの検索は、一般に、巡回セールスマン問題 (Traveling Salesman Problem: TSP) の解析と呼ばれています。 | Boolean |
Preserve_Terminal_Stops (オプション) | [ストップを並べ替えて最適ルートを検出] がオン (または True) の場合、最初と最後のストップを維持して、残りの順序を変更できます。 最初と最後のストップは、Sequence 属性値によって決定されます。Sequence 値が NULL の場合、Object ID 値によって決定されます。
[ストップを並べ替えて最適ルートを検出] がオフ (または False) の場合、[ターミナル ストップを維持] は無視されます。 | String |
Return_to_Start (オプション) | ルートを同じ位置で開始および終了するかどうかを選択します。このオプションを使用すると、最初のストップ フィーチャを複製して、複製したストップを最後に配置する必要がなくなります。 ルートの開始位置は、Sequence 属性の値が最も低いストップ フィーチャです。Sequence 値が NULL の場合、Object ID 値が最低のストップ フィーチャになります。
| Boolean |
Use_Time_Windows (オプション) | ルートでストップに到着する時刻が入力ストップのタイム ウィンドウで指定されている場合、このオプションをオンにします (または、True に設定します)。TimeWindowStart および TimeWindowEnd 属性に時間を入力することで、入力ストップにタイム ウィンドウを追加できます。
[タイム ウィンドウを使用] がオン (または True) の場合、入力ストップにタイム ウィンドウがなくても、ツールの実行に少し時間がかかります。そのため、可能な場合は、このオプションをオフに (False に設定) することをお勧めします。 | Boolean |
Time_of_Day (オプション) | ルートの開始の日時を指定します。 ネットワーク データセットにライブまたは履歴交通量データが含まれている場合、時刻を指定すると、その日時の交通状況における移動時間が解析されるため、ストップ間の移動時間の評価が正確になります。 [時刻のタイム ゾーン] パラメーターは、この日時が UTC を参照するか、ストップの場所のタイム ゾーンを参照するかを指定します。 [使用する単位] が時間ベース単位に設定されていない場合、このパラメーターは無視されます。 | Date |
Time_Zone_for_Time_of_Day (オプション) | [時刻] パラメーターのタイム ゾーンを指定します。
| String |
UTurn_Policy (オプション) | ジャンクションでの U ターン ポリシー。U ターンを許可するということは、解析においてジャンクションで方向転換し、同じ道路を引き返すことができるということを意味します。 ジャンクションが道路の交差と行き止まりを表すことを前提に、さまざまな車両が、一部のジャンクションでは方向転換でき、他のジャンクションでは方向転換できない、というように設定できます。これは、ジャンクションが交差と行き止まりのどちらを表すかによって変わります。これに対応するには、ジャンクションに接続するエッジや道路の数 (ジャンクションでのノードへの接続数) によって、暗黙的に U ターン ポリシーを指定します。以下では、このパラメーターで選択できる値と、ジャンクションので接続におけるそれぞれの意味について示します。
このパラメーターの値は、[移動モード](Python では Travel_Mode) をカスタム以外の値に設定した場合、オーバーライドされます。 | String |
Point_Barriers (オプション) | ポイント バリアを指定します。ポイント バリアは、通行不可と追加コストの 2 種類に分かれています。これらは、一時的にネットワーク上のポイントの通行を規制したり、ポイントにインピーダンスを追加したりします。ポイント バリアはフィーチャ セットで定義されます。ポイント フィーチャに指定した属性値によって、ポイント バリアが通行不可バリアなのか、追加コスト バリアなのかが決まります。属性テーブルの各フィールドとその説明を以下に示します。 ObjectID: システムで管理される ID フィールド。 Shape: ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。 Name: バリアの名前。 BarrierType: バリアの通過を完全に規制するのか、バリアを通過する際のコストを追加するのかを指定します。次の 2 つのオプションがあります。
[規制] の場合は 0 の値、[追加コスト] の場合は 2 の値を使用します。 Additional_Time: バリアを通過するときに追加される移動時間の値を指定します。このフィールドは、追加コスト バリアにのみ適用され、計測単位が時間ベースである場合に限られます。このフィールドには 0 以上の値を指定する必要があります。単位は [計測単位] パラメーターで指定した単位と同じです。 Additional_Distance: バリアを通過するときに追加される距離の値を指定します。このフィールドは、追加コスト バリアにのみ適用され、計測単位が距離ベースである場合に限られます。このフィールドには 0 以上の値を指定する必要があります。単位は [計測単位] パラメーターで指定した単位と同じです。 | Feature Set |
Line_Barriers (オプション) | 一時的にラインの横断を規制するライン バリアを指定します。ライン バリアは、フィーチャ セットで定義されます。属性テーブルの各フィールドとその説明を以下に示します。 ObjectID: システムで管理される ID フィールド。 Shape: ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。 Name: バリアの名前。 | Feature Set |
Polygon_Barriers (オプション) | ポリゴン バリアを指定します。ポリゴン バリアは、通行不可とコスト係数指定の 2 種類に分かれています。これらは、ポリゴン バリアに含まれるネットワークの一部に対して、一時的に通行を規制したり、インピーダンスを増減したりします。ポリゴン バリアはフィーチャ セットで定義されます。ポリゴン フィーチャに指定した属性値によって、ポリゴン バリアが通行不可バリアなのか、コスト係数指 バリアなのかが決まります。属性テーブルの各フィールドとその説明を以下に示します。 ObjectID: システムで管理される ID フィールド。 Shape: ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。 Name: バリアの名前。 BarrierType: バリアの通過を完全に禁止するか、バリアを通過する際のコストを係数に基づいて計算するかを指定します。次の 2 つのオプションがあります。
[規制] の場合は 0 の値、[コスト係数指定] の場合は 1 の値を使用します。 ScaledTimeFactor: これは、バリアが交差している道路の移動時間に乗算する係数です。このフィールドは、コスト係数指定バリアにのみ適用され、計測単位が時間ベースである場合に限られます。このフィールドには 0 より大きい値を指定する必要があります。 ScaledDistanceFactor: これは、バリアが交差している道路の距離に乗算する係数です。この属性は、コスト係数指定バリアにのみ適用され、計測単位が距離ベースである場合に限られます。この属性には 0 より大きい値を指定する必要があります。 | Feature Set |
Time_Attribute (オプション) | [使用する単位] の値が時間単位である場合に使用するネットワーク コスト属性を定義します。 [使用する単位] の値がここに定義されているコスト属性の単位と異なる場合は、ツールによって必要な時間単位の変換がなされます。つまり、デフォルトのカットオフの時間単位とネットワーク コスト属性が同じである必要はありません。 このパラメーターの値は、[移動モード](Python では Travel_Mode) を [カスタム] 以外の値に設定した場合、オーバーライドされます。 | String |
Time_Attribute_Units (オプション) | 時間属性の単位。時間属性の単位を明示的に設定できますが、何も指定しないか、"#" を指定して、解析によって単位が決定されるようにすることをお勧めします。 このパラメーターの値は、Travel_Mode を CUSTOM 以外の値に設定した場合、オーバーライドされます。 | String |
Distance_Attribute (オプション) | [使用する単位] の値が距離単位である場合に使用するネットワーク コスト属性を定義します。 [使用する単位] の値がここに定義されているコスト属性の単位と異なる場合は、ツールによって必要な距離単位の変換がなされます。つまり、計測単位とネットワーク コスト属性の距離単位が同じである必要はありません。 このパラメーターの値は、[移動モード](Python では Travel_Mode) を [カスタム] 以外の値に設定した場合、オーバーライドされます。 | String |
Distance_Attribute_Units (オプション) | 距離属性の単位。距離属性の単位を明示的に設定できますが、何も指定しないか、"#" を指定して、解析によって単位が決定されるようにすることをお勧めします。 このパラメーターの値は、Travel_Mode が CUSTOM 以外の値に設定されているとオーバーライドされます。 | String |
Use_Hierarchy_in_Analysis (オプション) | ポイント間の最短ルートを検索するときに階層を使用するかどうかを指定します。
解析を実行するネットワーク データセットに使用する階層属性が定義されていない場合、パラメーターは使用されません。この場合、「#」をパラメーター値として使用します。 Force_Hierarchy_Beyond_Distance パラメーターを使用すると、Use_Hierarchy_in_Analysis が False に設定されていても、解析での階層の使用を強制することができます。 このパラメーターは、Travel_Mode を CUSTOM に設定しなければ、無視されます。カスタム歩行モードをモデリングする場合、階層が動力付き車両用に設計されているため、階層をオフにすることをお勧めします。 | Boolean |
Restrictions [restriction,...] (オプション) | 解析時にどのネットワーク規制属性を考慮するかを指定します。 このパラメーターの値は、[移動モード](Python では Travel_Mode) をカスタム以外の値に設定した場合、オーバーライドされます。 | String |
Attribute_Parameter_Values (オプション) | パラメーターを持つネットワーク属性のパラメーター値を指定します。レコード セットには、パラメーターを一意に特定するために一緒に使用される 2 つの列と、パラメーター値を指定する別の列が含まれています。 このパラメーターの値は、[移動モード](Python では Travel_Mode) をカスタム以外の値に設定した場合、オーバーライドされます。 属性パラメーター値 レコード セットには、属性が関連付けられています。属性テーブルの各フィールドとその説明を以下に示します。 ObjectID: システムで管理される ID フィールド。 AttributeName: テーブル行で設定される属性パラメーターを持つネットワーク属性の名前。 ParameterName: テーブル行で設定される値を持つ属性パラメーターの名前。(オブジェクト タイプ パラメーターは、このツールを使用して更新できません。) ParameterValue: 属性パラメーターに設定する値。値が指定されない場合、属性パラメーターは NULL に設定されます。 | Record Set |
Accumulate_Attributes [attribute,...] (オプション) | 解析中に累積されるコスト属性のリスト。これらの累積属性は、参考情報としてのみ使用されます。解析では、[時間属性](Python では Time_Attribute) パラメーターまたは [距離属性](Python では Distance_Attribute) パラメーターで指定されているコスト属性のみを使用して最短経路を計算します。 累積されるコスト属性ごとに、解析で出力されたルートに Total_[属性] フィールドが追加されます。 | String |
Maximum_Snap_Tolerance (オプション) | 最大スナップ許容値とは、Network Analyst がネットワーク上でポイントの配置や再配置を行う場合に検索できる最大距離のことです。検索によって適切なエッジまたはジャンクションを見つけ、そのうちで最も近い場所にポイントをスナップします。最大スナップ許容値内で適切な場所が見つからなかった場合、そのオブジェクトには未配置のマークが付けられます。 | Linear Unit |
Feature_Locator_WHERE_Clause (オプション) | ストップを配置できるネットワーク エレメントを制限するソース フィーチャ サブセットの選択に使用する SQL 式。このパラメーターの構文は、ソース フィーチャクラス名 (後に半角スペースが入ります) と SQL 構文の 2 つの部分で構成されます。2 つ以上のソース フィーチャクラスを含む SQL 式を記述するには、それらをセミコロンで区切ります。 通行が規制されている高速道路に施設を配置しないようにするために、たとえば、次のように SQL 式を記述してそれらのソース フィーチャを除外します。"Streets" "FUNC_CLASS not in('1', '2')"。 読み込み時に、バリアはフィーチャのロケーター WHERE 句を無視します。 | String |
Route_Shape (オプション) | ツールによって出力されるルート フィーチャのタイプを指定します。このパラメーターは、次のいずれかの値を使用して指定できます。
[ルート形状] パラメーターが [正確な形状] に設定されている場合は、[ルートの単純化許容値] パラメーターの適切な値を使用して、ルートの形状の一般化をさらに制御できます。 [ルート形状] パラメーターにどのような値を選択しても、最適ルートは常に、ストップ間の直線距離を使用するのではなく、移動時間または移動距離を最小化することで決定されます。つまり、ルート形状が異なるだけで、ルート検索時に対象となる道路は同じであることを意味します。 | String |
Route_Line_Simplification_Tolerance (オプション) | ルート ジオメトリをどの程度単純化するかを指定します。 Route_Shape パラメーターが TRUE_LINES_WITH_MEASURES または TRUE_LINES_WITHOUT_MEASURES に設定されていない場合、このパラメーターは無視されます。 単純化によって、ルートの基本的な形状を定義する重要ポイント (交差点でのターンなど) は維持され、その他のポイントは削除されます。ここで指定する単純化の距離は、単純化されたラインの元のラインからの逸脱として認められる、最大許容オフセットです。ラインの単純化では、ルート ジオメトリを構成する頂点の数が削減されます。これにより、ツールの実行時間が短縮されます。 このパラメーターの値は、[移動モード](Python では Travel_Mode) をカスタム以外の値に設定した場合、オーバーライドされます。 | Linear Unit |
Populate_Route_Edges (オプション) | 各ルートに対してエッジを生成するかどうかを指定します。ルート エッジは、ルートが通過する個別の道路フィーチャまたはその他の類似フィーチャを表します。出力ルート エッジ レイヤーは一般的に、結果のルートで最も多く/少なく利用される道路またはパスを確認するために使用されます。
| Boolean |
Populate_Directions (オプション) | 各ルートに対してルート案内を生成するかどうかを指定します。
| Boolean |
Directions_Language (オプション) | ルート案内を生成する際に使用する言語を指定します。 このパラメーターは、[ルート案内の設定] パラメーターがオンであるか、True に設定されている場合にのみ使用されます。 コンピューターにインストールされている ArcGIS 言語パックに応じて使用できるルート案内の言語。2 文字または 5 文字の言語コードで値を入力します (たとえば、英語の場合は en、簡体字中国語の場合は zh-CN)。 サポートされていない言語コードを指定すると、デフォルトの言語である英語を使用するルート案内が返されます。 | String |
Directions_Distance_Units (オプション) | ルート案内で移動距離を表示する単位を指定します。このパラメーターは、[ルート案内の設定] パラメーターがオンであるか、True に設定されている場合にのみ使用されます。
| String |
Directions_Style_Name (オプション) | ルート案内の書式スタイルの名前を指定します。このパラメーターは、[ルート案内の設定] パラメーターがオンであるか、True に設定されている場合にのみ使用されます。パラメーターには、次のいずれかの値を指定できます。
| String |
Maximum_Features_Affected_by_Point_Barriers (オプション) | ポイント バリアが影響を与えることのできるフィーチャの数を制限します。 このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。 NULL 値は、制限がないことを示します。 | Long |
Maximum_Features_Affected_by_Line_Barriers (オプション) | ライン バリアが影響を与えることのできるフィーチャの数を制限します。 このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。 NULL 値は、制限がないことを示します。 | Long |
Maximum_Features_Affected_by_Polygon_Barriers (オプション) | ポリゴン バリアが影響を与えることのできるフィーチャの数を制限します。 このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。 NULL 値は、制限がないことを示します。 | Long |
Maximum_Stops (オプション) | ルート解析に追加できるストップの数を制限します。このパラメーターは、[ストップ] パラメーターと関連しています。 このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。 NULL 値は、制限がないことを示します。 | Long |
Maximum_Stops_per_Route (オプション) | 解析で各ルートに割り当てることのできるストップの最大数を制限します。 ストップは、[ストップ] パラメーターのポイントの RouteName フィールドを使用して、ルートに事前に割り当てられます。 このパラメーターは、解析時に発生する処理量の管理に役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメーターに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。 NULL 値は、制限がないことを示します。 | Long |
Force_Hierarchy_Beyond_Distance (オプション) | 階層が有効化されていない場合であっても、ルートの検索時に階層の適用を開始する最低値となる距離を指定します。このパラメーターの単位は、[距離属性の単位] パラメーターに指定されている単位と同じです。 広範囲でストップ間のルートを検索する場合は、ネットワークの階層を使用して解析するほうが、階層を使用せずに解析する場合よりも処理を大幅に削減できる傾向があります。このパラメーターは、解析時に発生する処理量を管理することに役立ちます。 NULL 値を指定すると、階層は強制されません。[解析に階層を使用] パラメーターの値を指定すると、常に階層が使用されます。入力ネットワーク データセットが階層をサポートしていない場合にこのパラメーターの値を指定すると、エラーが発生します。その場合は、NULL 値を使用してください。 このパラメーターは、ネットワーク データセットに階層属性が含まれていない限り無効です。 | Double |
Save_Output_Network_Analysis_Layer (オプション) |
いずれの場合も、結果が格納されたフィーチャクラスが返されます。ただし、サーバー管理者は、このツールのセットアップと結果を ArcGIS Desktop 環境の Network Analyst コントロールでデバッグできるように、ネットワーク解析レイヤーの出力を選択することもあります。これによって、デバッグ処理が非常に簡単になります。 ArcGIS Desktop では、ネットワーク解析レイヤーのデフォルトの出力場所は、scratch フォルダーになります。scratch フォルダーの場所は、arcpy.env.scratchFolder ジオプロセシング環境の値を評価することで確認できます。出力されたネットワーク解析レイヤーは、「_ags_gpna」に英数字の GUID を付け加えた名前の LYR ファイルとして保存されます。 | Boolean |
Travel_Mode (オプション) | 解析する交通モードを選択します。CUSTOM は、常に選択肢に含まれています。その他の移動モード名を表示するには、それらが、Network_Dataset パラメーターで指定したネットワーク データセットに存在している必要があります (arcpy.na.GetTravelModes 関数はネットワーク データセットで構成された移動モード オブジェクトの辞書を提供し、name プロパティは移動モード オブジェクトの名前を返します)。 移動モードは、ネットワーク データセットで定義され、車、トラック、歩行などの移動モードをモデリングする一連のパラメーターをオーバーライドする値を提供します。ここで移動モードを選択することによって、以下のパラメーターの値を指定する必要がなくなります。これらのパラメーターは、ネットワーク データセットで指定した値でオーバーライドされます。
| String |
Time_Zone_for_Time_Windows (オプション) | ストップでのタイム ウィンドウ値のタイム ゾーンを指定します。タイム ウィンドウは、ストップの TimeWindowStart フィールドと TimeWindowEnd フィールドの一部として指定されます。このパラメーターは、[タイム ウィンドウの使用] パラメーターがオン (または True に設定) の場合にのみ適用されます。
| String |
Overrides (オプション) | ネットワーク解析問題の解決法を見つける場合に、解析の動作に影響を与えることができる追加設定を指定します。 JSON (JavaScript Object Notation) で、このパラメーターの値を指定する必要があります。たとえば、有効な値は {"overrideSetting1" : "value1", "overrideSetting2" : "value2"} という形式です。オーバーライド設定名は、必ず二重引用符で囲みます。値には、数値、ブール型、または文字列を使用できます。 このパラメーターのデフォルト値は、値なしであり、解析の設定を上書きしません。 オーバーライドは、設定を適用する前後で得られた結果を慎重に分析した後にのみ使用する必要のある高度な設定です。解析ごとにサポートされているオーバーライド設定の一覧およびそれらの許容される値については、Esri テクニカル サポートにお問い合わせください。 | String |
Save_Route_Data (オプション) | ルート レイヤーを ArcGIS Online または Portal for ArcGIS で共有するのに使用できる形式で、解析の入力と出力を保持するファイル ジオデータベースを含む ZIP ファイルを出力に含めるかどうかを選択します。 ArcGIS Desktop では、出力ファイルのデフォルトの出力場所は、scratch フォルダーになります。scratch フォルダーの場所は、arcpy.env.scratchFolder ジオプロセシング環境の値を評価することで確認できます。
| Boolean |
派生した出力
名前 | 説明 | データ タイプ |
Solve_Succeeded | サービスがルートを正常に検出できたかどうかを特定します。 | ブール型 |
Output_Routes | ストップ間に生成されたルート。 | フィーチャ セット |
Output_Route_Edges | ルートが移動する個別の道路セグメント。 | フィーチャ セット |
Output_Directions | ストップ間に生成された各ルートのターンごとのルート案内。このパラメーターは、ルート案内に加えて、テキストに対応するルート案内フィーチャのジオメトリも含んでいます。 | フィーチャ セット |
Output_Stops | ルートによって訪問されたストップや、ルートで到着できなかったストップの属性。 | フィーチャ セット |
Output_Network Analysis_Layer | ツールのパラメーターで構成されているとおりにプロパティが指定されたネットワーク解析レイヤー。これはマップ内でさらに詳細な解析やデバッグ用に使用できます。 | ファイル |
Output_Route_Data | 特定のルートに関するすべての情報を含む zip ファイル。 | ファイル |
コードのサンプル
FindRoutes (ルートの検索) の例 1 (Python ウィンドウ)
必須パラメーターを使用してツールを実行します。
stops = arcpy.FeatureSet()
stops.load("Stops")
arcpy.na.FindRoutes(stops, "Miles", "Streets_ND", "in_memory", "Routes",
"RouteEdges", "Directions", "OutStops",
UTurn_Policy="NO_UTURNS")
FindRoutes (ルートの検索) の例 2 (スタンドアロン スクリプト)
次のスタンドアロン Python スクリプトは、FindRoutes (欠損値の補完) ツールの使用方法を示しています。
# Name: FindRoutes_Workflow.py
# Description: Find the fastest route visting all the stops. The output will
# show the route, driving directions, and how long it took to get
# to each stop.
# 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 = r'C:\arcgis\ArcTutor\Network Analyst\Tutorial\SanDiego.gdb'
env.overwriteOutput = True
#Set local variables
inNetworkDataset = r'Transportation\Streets_ND'
inStops = r'Analysis\Stops'
outGeodatabase = r'C:\arcgis\ArcTutor\Network Analyst\Tutorial\Output.gdb'
outRoutes = "Routes"
outRouteEdges = "RouteEdges"
outDirections = "Directions"
outStops = "Stops"
measurement_units = "Minutes"
# Run FindRoutes. Reorder the stops to find the fastest route, but maintain
# the first stop as the starting point and the last stop as the end point.
arcpy.na.FindRoutes(inStops, measurement_units, inNetworkDataset,
outGeodatabase, outRoutes, outRouteEdges, outDirections,
outStops, Reorder_Stops_to_Find_Optimal_Routes=True,
Preserve_Terminal_Stops="PRESERVE_BOTH")
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)
環境
ライセンス情報
- Basic: 次のものが必要 Network Analyst
- Standard: 次のものが必要 Network Analyst
- Advanced: 次のものが必要 Network Analyst