ジオメトリック ネットワークのトレース(Trace Geometric Network) (データ管理)
サマリ
フラグ、バリア、および指定したウェイト プロパティに基づいて、指定したネットワーク解析の問題を解決します。
使用法
-
このツールは、ネットワーク データセット(ArcGIS Network Analyst エクステンションで使用するネットワーク)では機能しません。
-
このツールは、入力フラグおよびバリアを使用して空間検索を実行し、一致するフィーチャを特定します。フラグの場合はトレースを開始するフィーチャを、バリアの場合はトレースをブロックするフィーチャを決定するために使用します。したがって、入力フラグおよびバリアは正確に特定する必要があります。ModelBuilder では、フラグおよびバリアを正しく特定できているかどうかわからない場合は、[スナップ(Snap)] ツールを使用して、フラグおよびバリアを一致させるフィーチャを指定できます。
-
このツールの出力は、入力ジオメトリック ネットワークに含まれるフィーチャクラスごとに 1 つのレイヤを含む、グループ レイヤです。トレースから返されるフィーチャは、それぞれのレイヤ内で選択された状態になります。入力レイヤがマップ内に存在する場合、出力グループ レイヤには、フィーチャが選択されていないレイヤが含まれることがあります。これらは、トレースからフィーチャが返されなかった空のレイヤです。ModelBuilder では、[データの選択(Select Data)] ツールを使用してグループ レイヤから特定のレイヤを抽出したり、[フィーチャ レイヤの作成(Make Feature Layer)] ツールを使用して [データの選択(Select Data)] ツールの出力からフィーチャ レイヤを作成したりできます。グループ内のレイヤが空かどうかを確認するには、[行のカウント(Get Count)] ツールを使用します。グループ レイヤはジオプロセシング タスクからの出力パラメータ タイプとしてサポートされていないため、これは ArcGIS Server にモデルを公開する場合に特に便利です。グループ レイヤは直接出力としてサポートされていないため、[データの選択(Select Data)] ツールを使用して、出力に対して 1 つの(グループでない)レイヤを作成する必要があります。
-
このツールは、パーソナル ジオデータベース内のジオメトリック ネットワークを編集しているときは実行できません。
-
トポロジ データセットやネットワーク データセットなど他のデータセットと異なり、ジオメトリック ネットワークには関連付けられているレイヤがないので、ArcMap でこのツールを使用する場合は、ジオメトリック ネットワークをディスクから選択する必要があります。入力としてレイヤ ドロップダウン リストからジオメトリック ネットワークを選択するオプションはありません。
構文
パラメータ | 説明 | データ タイプ |
in_geometric_network |
トレースが実行されるジオメトリック ネットワーク。 | Geometric Network |
out_network_layer |
トレースの結果を選択セットとして保存するグループ レイヤの名前。 | Group Layer |
in_flags |
トレース操作の始点となる一連のフラグを表すポイント フィーチャクラス。たとえば、上流解析を実行する場合は、フラグを使用して上流解析を開始する位置を指定します。フラグはエッジまたはジャンクションに沿った任意の位置に配置できますが、同じ位置にジャンクションとフラグの両方がある場合は、ジャンクションが先に考慮されます。 | Feature Layer |
in_trace_task_type |
指定したジオメトリック ネットワークで実行するトレース タスク。
| String |
in_barriers (オプション) |
トレースを続行できなくなるネットワーク内の位置を定義する、一連のバリアを表すポイント フィーチャクラス。ネットワークの特定の部分のみをトレースする場合は、バリアを使用して、ネットワークのその部分を分離できます。バリアはエッジまたはジャンクションに沿った任意の位置に配置できますが、同じ位置にジャンクションとフラグの両方がある場合は、ジャンクションが先に考慮されます。トレースを停止するフィーチャを意図的に検出するために、[結果をトレースがストップしたフィーチャに制限] パラメータを TRACE_ENDS パラメータに設定しない限り、フィーチャは無効として扱われ、トレース時に考慮されません。 | Feature Layer |
in_junction_weight (オプション) |
任意のジャンクションを移動するコストとして使用されるジャンクションのウェイト。このウェイトは、指定のジオメトリック ネットワークに対して定義済みである必要があります。コストに依存しない、次のトレース タスク タイプのいずれかを指定した場合、このパラメータは無効、または無視されます。
| String |
in_edge_along_digitized_weight (オプション) |
エッジのデジタイズされた方向に沿ってエッジを移動するコストとして使用されるエッジのウェイト。このウェイトは、指定のジオメトリック ネットワークに対して定義済みである必要があります。コストに依存しない、次のトレース タスク タイプのいずれかを指定した場合、このパラメータは無効、または無視されます。
| String |
in_edge_against_digitized_weight (オプション) |
エッジのデジタイズされた方向と反対にエッジを移動するコストとして使用されるエッジのウェイト。このウェイトは、指定のジオメトリック ネットワークに対して定義済みである必要があります。コストに依存しない、次のトレース タスク タイプのいずれかを指定した場合、このパラメータは無効、または無視されます。
| String |
in_disable_from_trace [in_disable_from_trace,...] (オプション) |
トレースへの参加が無効になっているフィーチャクラスのリスト。フィーチャクラスを無効として指定すると、トレース操作はそのフィーチャクラスのすべてのフィーチャを無効、またはバリアが配置されているものとして扱います。トレース時にフィーチャクラス全体を考慮しないようにするには、このオプションを使用します。たとえば、配電網のスイッチ レイヤを無効にし、[結果をトレースがストップしたフィーチャに制限] パラメータを TRACE_ENDS に設定して、配電網のあるポイントから解析することで、配電網からこのポイントを分離するために作動する必要があるスイッチを見つけることができます。つまり、解析操作が停止したフィーチャがそれに相当します。 | String |
in_trace_ends (オプション) | トレースにすべてのフィーチャを含めるか、トレースがストップしたフィーチャのみを含めるかを指定します。トレースがストップしたフィーチャを決定する必要がある場合は、このオプションを使用します。このオプションを使用してトレース操作からフィーチャを返すには、フィーチャが次のいずれかに該当する必要があります。
| Boolean |
in_trace_indeterminate_flow (オプション) | トレースにすべてのフィーチャを含めるか、トレースがストップしたフィーチャのみを含めるかを指定します。
フローに依存した、次のいずれかのトレース タスク タイプが設定されている場合のみ有効です。
| Boolean |
in_junction_weight_filter (オプション) |
トレース時にジャンクションのフィルタリングに使用するジャンクション ウェイト フィルタを作成するためのウェイトです。 | String |
in_junction_weight_range (オプション) |
トレース可能なネットワーク フィーチャのウェイト値の有効範囲または無効範囲を指定します。コストに依存しないトレース タスク タイプが設定されている場合は無効になります。ウェイト フィルタを作成するには、フィーチャに対して有効なウェイト範囲を指定する必要があります。ウェイト フィルタには複数の範囲を指定できます。複数のウェイト範囲を指定するときは、各範囲をカンマで区切ってください。範囲内の最小値と最大値はハイフンでつなぎます。範囲値が 1 つだけの場合はハイフンを使用せず、値をカンマで区切ります。例: 0-2,3,6,7-10 | String |
in_junction_weight_range_not (オプション) | 指定したジャンクション ウェイト範囲に論理 NOT 演算子を適用します。デフォルトでは、ここで入力するジャンクション ウェイト範囲はトレース可能なジャンクション フィーチャを指定します。このチェックボックスをオンにした場合、ウェイトが入力範囲内であるジャンクション フィーチャはトレースされません。
| Boolean |
in_edge_along_digitized_weight_filter (オプション) |
トレース中にエッジ フィーチャのフィルタリングに使用する順方向エッジ ウェイト フィルタを作成するためのウェイト。 | String |
in_edge_against_digitized_weight_filter (オプション) |
トレース時にエッジ フィーチャのフィルタリングに使用する逆方向エッジ ウェイト フィルタを作成するためのウェイト。 | String |
in_edge_weight_range (オプション) |
トレース可能なネットワーク フィーチャのウェイト値の有効範囲または無効範囲を指定します。コストに依存しないトレース タスク タイプが設定されている場合は無効になります。ウェイト フィルタを作成するには、フィーチャに対して有効なウェイト範囲を指定する必要があります。ウェイト フィルタには複数の範囲を指定できます。複数のウェイト範囲を指定するときは、各範囲をカンマで区切ってください。範囲内の最小値と最大値はハイフンでつなぎます。範囲値が 1 つだけの場合はハイフンを使用せず、値をカンマで区切ります。例: 0-2,3,6,7-10 | String |
in_edge_weight_range_not (オプション) | 指定したエッジ ウェイト範囲に論理 NOT 演算子を適用します。デフォルトでは、ここで入力するエッジ ウェイト範囲はトレース可能なエッジ フィーチャを指定します。このチェックボックスをオンにした場合、ウェイトが入力範囲内であるエッジ フィーチャはトレースされません。
| Boolean |
コードのサンプル
次のスタンドアロン Python スクリプトは、Python スクリプトで TraceGeometricNetwork(ジオメトリック ネットワークのトレース)機能を使用して、フラグを配置し、バリアは配置せずに、ジオメトリック ネットワークで [接続解析] トレースを実行する方法を示しています。
# Import arcpy module
import arcpy
# Local variables:
gnVersionFDS_Net = "C:/GeometricNetworks/GeometricNetwork.gdb/gnVersionFDS_with_GN/gnVersionFDS_1_Net"
Flags = "C:/GeometricNetworks/GeometricNetwork.gdb/gnVersionFDS_with_GN/Flags"
gnVersionFDS_1 = "gnVersionFDS_1_Net"
# Process: Trace Geometric Network
arcpy.gp.TraceGeometricNetwork(gnVersionFDS_Net, gnVersionFDS_1, Flags, "FIND_CONNECTED", "", "", "", "", "", "NO_TRACE_ENDS", "", "", "", "AS_IS", "", "", "", "AS_IS")
次のスタンドアロン Python スクリプトは、Python スクリプトで TraceGeometricNetwork(ジオメトリック ネットワークのトレース)機能を使用して、フラグを配置し、バリアは配置せず、Friction_Factor というウェイトと 1 ~ 10 のウェイト フィルタを使用して、ジオメトリック ネットワークで [パス解析] トレースを実行する方法を示しています。
# Import arcpy module
import arcpy
# Local variables:
Water_Net = "C:/GeometricNetworks/Montgomery.gdb/Water/Water_Net"
Flags = "C:/GeometricNetworks/Montgomery.gdb/Water/Flags"
Water_Net_2 = "Water_Net"
# Process: Trace Geometric Network
arcpy.gp.TraceGeometricNetwork(Water_Net, Water_Net_2, Flags, "FIND_PATH", "", "", "Friction_Factor", "Friction_Factor", "", "NO_TRACE_ENDS", "", "", "", "AS_IS", "Friction_Factor", "Friction_Factor", "1-10", "AS_IS")