バリア

バリアは、位置をマークしてトレース、エクスポート、または更新を停止するために、それぞれトレース、サブネットワークのエクスポート操作、およびサブネットワークの更新操作で使用されます。

ユーティリティ ネットワークには 2 種類のバリアがあります。

  • フィーチャ バリア - [トレース] ウィンドウまたは [トレース位置の追加 (Add Trace Locations)] ツールを使用するか、[トレース (Trace)] ジオプロセシング ツールでユーザー定義のフィーチャクラスまたはテーブルをバリアとして機能するように指定することでマップ上に作成できます。
  • ダイナミック バリア - 通過可能性バリアとフィルターによって定義される条件に一致するネットワーク フィーチャ

フィーチャ バリアは、トレースを構成する際に、ネットワーク フィーチャをバリアとして機能するように指定することで作成します。 ダイナミック バリアでは、ネットワーク フィーチャに関する情報を使用してバリアを作成できます。 たとえば、status などのネットワーク属性を使用して、開放スイッチでトレースを停止できます。

トレースの実行、サブネットワークの更新またはエクスポート時にバリア フィーチャを含めるように、層内のすべてのサブネットワークを構成できます。 [バリア フィーチャを含める] オプションを有効にすると、トレースの結果にはバリア フィーチャが含まれます。エクスポートされた情報にバリアが含まれ、サブネットワークの更新操作時にバリア フィーチャが更新されます。 これは、層に関するサブネットワーク定義の [サブネットワーク トレース構成] セクションの一部として構成されます。 [トレース (Trace)] ツールで、[バリア フィーチャを含める] パラメーターを使用して、これと同じことを達成できます。

注意:

[バリア フィーチャを含める] 構成オプションはターミナルを含むフィーチャには適用されません。

フィーチャ バリア

フィーチャ バリアは、トレース イベント中のオプションです。 フィーチャ バリアを含めるには、ツールを使用して、ネットワーク内のフィーチャをトレースのバリアとして設定します。

任意のネットワーク フィーチャをバリアとして使用できます。 空間フィーチャを操作すると、トレースのバリアの位置を示す一致ポイントがマップ上に作成されます。 非空間エッジおよびジャンクション オブジェクト テーブルからレコードを選択し、バリアとして機能するように [トレース] ウィンドウに追加することもできます。

  • ポイントの場合、複数のターミナルがあるデバイスで、特定のターミナルを指定してバリアとして設定できます。
  • ラインの場合、ライン フィーチャに沿った任意の場所にバリアを配置できます。
  • ポリゴンの場合、バリアをマークするため、ポイントが重心に配置されます。
  • ジャンクション オブジェクトの場合、複数のターミナルがあるオブジェクトで、特定のターミナルを指定してバリアとして設定できます。
  • エッジ オブジェクトの場合、バリアをオブジェクトに配置することでバリアの位置を指定します。

トレース操作を実行しているときに、結果タイプ パラメーターの [集約されたジオメトリ] オプションを使用して、部分的なフィーチャ結果を返すことができます。 バリアがエッジに沿って配置されている場合、トレース結果はバリアで停止し、エッジ フィーチャの部分的なフィーチャ ジオメトリを返します。

バリア フィーチャは、[トレース] ウィンドウの [バリア] タブを使用して作成および削除します。 このウィンドウでは、一度に 1 つ以上のバリアを作成できます。 バリアが作成されたら、UN_Temp_Barriers フィーチャクラスがプロジェクトのデフォルト ジオデータベースに作成されます。 連続するバリアがこのクラスに追加されます。 すべてのバリアを削除するには、[トレース] ウィンドウの [すべて解除] ボタン 消去 をクリックします。

フィーチャ バリアは、サブネットワークベースのトレースの実行時にバリアのフィルターとして機能でき、始点からサブネットワーク コントローラーへの通過を制限します。 このため、トレースの実行に必要なサブネットワーク コントローラーを識別してから、ネットワーク フィーチャの 2 回目の通過でバリアを適用できます。 これは、始点とサブネットワーク コントローラーの間にフィーチャ バリアが配置される、サブネットワークベースのトレースで役立ちます。 この動作を有効にするには、[トレース] ウィンドウの [バリア] タブにある [バリアのフィルター] オプションを使用するか、[トレース位置の追加 (Add Trace Locations)] ツールの [バリアのフィルター] パラメーターを使用します。

バリアのフィルターとして指定されたフィーチャ バリアを表示するトレース ウィンドウ。
注意:

フィーチャ バリアで [バリアのフィルター] オプションを使用するには、ArcGIS Enterprise 10.8.1 以降が必要です。

バリアは、ユーザー定義のフィーチャクラスで指定するか、トレース位置の追加ツールを使用して作成することもできます。 このツールは、UN_Temp_Barriers と同じスキーマを使用して出力フィーチャクラスを作成します。また、このツールを使用すると、選択した空間ネットワーク フィーチャを、スクリプトまたはモデル内で使用できるようにユーザー定義のフィーチャクラスに出力できます。

既存のユーザー定義のフィーチャクラスまたはテーブルを使用して [トレース (Trace)] ツールにバリアを指定する場合の要件は、以下のとおりです。

  • ユーザー定義のフィーチャクラスまたはテーブルのスキーマは、UN_Temp_Barriers フィーチャクラスに存在するフィールドと類似したタイプ guid の FEATUREGLOBALID フィールドを含み、対応するネットワーク フィーチャにバリアとして適用されるこのフィールドの値を含む必要があります。
    • このフィールドに値が入力されない場合、対応する値を持たないフィーチャは、バリアを配置するために使用されません。 このオプションは、どのフィーチャがバリアとして使用されるかについて、粒度を維持したい場合に役立ちます。
  • エッジ フィーチャまたはエッジ オブジェクトに沿ってバリアを配置するには、ユーザー定義のフィーチャクラスまたはテーブルのスキーマに、タイプが double の PERCENTALONG フィールドが含まれている必要があります。
    • エッジに沿ったバリアの位置を示すには、PERCENTALONG フィールドに 0.0 ~ 1.0 の値が含まれている必要があります。
    • PERCENTALONG フィールドが存在しないか、適切な値を含んでいない場合、バリアがジャンクション上に配置されると見なされ、エッジに沿った配置は無視されます。
  • ジャンクション フィーチャまたはジャンク オブジェクト上にバリアを配置するには、ユーザー定義のフィーチャクラスまたはテーブルのスキーマに、タイプが long の TERMINALID フィールドが含まれている必要があります。
    • TERMINALID フィールドが存在しないか、適切な値を含んでいない場合、バリアがエッジ フィーチャ上に配置されると見なされ、ジャンクション上の配置は無視されます。

[トレース] ウィンドウを使用した始点とバリアの設定方法の詳細

ダイナミック バリア

フィーチャ バリアに加えて、ユーティリティ ネットワークはネットワーク属性ネットワーク カテゴリ、および関数の条件に基づいてフィーチャに対して動的にバリアを設定できます。 ダイナミック バリアは、サブネットワークの更新またはエクスポート操作時に常に使用されます。 トレース操作時に、ダイナミック バリアを修正できます。

ダイナミック バリアには、通過可能性バリアとフィルターの 2 つのタイプがあります。 これらは次の操作で使用されます。

  • サブネットワークの更新 - サブネットワーク コントローラーを起点に、サブネットワークが更新されます。 更新中に、サブネットワーク トレースも行われます。 トレースで通過可能性バリア フィーチャが検出されると、トレースが停止され、通過可能性バリアの前に配置されたフィーチャのみが更新されます。
  • サブネットワークのエクスポート - サブネットワークに関する情報が JSON ファイルにエクスポートされます。 情報の一部に、接続性 (接続元と接続先) が含まれます。 サブネットワークの更新と同様に、サブネットワーク トレースは、サブネットワーク コントローラーを起点として、エクスポート操作と同時に実行します。 トレースで通過可能性バリア フィーチャが検出されると、トレースが停止され、そのポイントまでのフィーチャに関する情報のみがエクスポートされます。
  • トレース - [トレース (Trace)] ツールを使用してトレースを実行するときは、両タイプのバリアが考慮されます。 通過可能性バリアとバリアのフィルターの両方がトレース時に存在する場合は、通過可能性バリアがバリアのフィルターよりも前に考慮されます。

追加の構成により、トレースの結果や計算、サブネットワーク情報の更新、またはサブネットワーク情報のエクスポートなど、特定の操作にバリア フィーチャを含めるかどうかを選択できます。 たとえば、エクスポート中に、検出されたバリア フィーチャに関する情報を JSON ファイルに含めることができます。

通過可能性バリア

[サブネットワークの更新 (Update Subnetwork)] ツール、[サブネットワークのエクスポート (Export Subnetwork)] ツール、および [トレース (Trace)] ツールはすべて、確立された通過可能性バリアを使用します。 ただし、これらのタイプのバリアを変更できるのは [トレース (Trace)] ツールのみです。 [トレース (Trace)] ツールで通過可能性バリアが事前定義された層を選択すると、[通過可能性] パラメーターがその情報で更新されます。 これらのパラメーターの設定は必要に応じて調整でき、ジャンクション、エッジ、またはその両方に適用できます。 このレベルでは、通過可能性バリアはサブネットワークの代替表現をモデル化します。

通過可能性バリアは、サブネットワークの範囲を定義し、管理者が [サブネットワーク定義の設定 (Set Subnetwork Definition)] ツールを使用して層内のすべてのサブネットワークで確立します。 このレベルでは、通過可能性バリアは、層内にあるサブネットワークの境界を定義するための標準条件を表します。

通過可能性バリアには、条件バリアと関数バリアの 2 つのタイプがあります。

条件バリア

条件バリアはネットワーク属性またはカテゴリに基づく式です。たとえば、水道ネットワークでは、すべての閉じているデバイスで停止します。 フィーチャが式の条件セットを満たすと、トレース、サブネットワークの更新、またはサブネットワークのエクスポート操作は次のフィーチャに進みません。

複数の条件バリアを実装するには、[結合方法] オプション (AND または OR 条件を定義) を使用します。 ネットワーク属性に基づく式は、他のネットワーク属性と比較できます。たとえば、[トレースの停止][現在の水圧] の属性値は、[通常の水圧] の値と一致しません。

複数の式の使用方法の詳細

関数バリア

関数バリアでは、関数の条件を満たすかどうかに基づいてサブネットワークの境界を定義します。 関数バリアは、圧力閾値 (たとえば 50) に基づいてパイプ ネットワーク内のサブネットワークを区別する場合などに使用されます。 このシナリオでは、Pressure 属性が存在している状態でトレース、更新、またはエクスポート操作時に考慮される各フィーチャが、サブネットワークに対して計算される圧力合計の値を提供します (たとえば 5 + 10 + 20 + 5 + 10)。 その値が 50 に達すると、そのポイントを通過したすべてのフィーチャはトレース、更新、またはエクスポートされません。

ネットワークには複数のパスに分岐していくパスが存在することがよくあります。 分岐パスをすべてまとめて考慮する場合 (グローバル) と、別々に分けて考慮する場合 (ローカル) があります。 例として、パイプ ネットワークに沿って設定されている距離をトレースする場合について考えてみましょう。 このシナリオでは、3 つの経路の分岐点に始点が配置され、グローバル値を使用してパイプを 3 マイル トレースするようにトレースが設定されています。この場合、このトレースは、3 つの分岐経路それぞれを 1 マイル移動します。 [ローカル値の使用] オプションを有効にすると、このトレースは、3 つの分岐パスのそれぞれを 3 マイル移動します。 [ローカル値の使用] オプションを選択した状態で関数バリアを使用してトレースを実行する場合、使用できる始点は 1 つのみであることに注意してください。

複数のバリア タイプを一度に使用できます。 バリアを組み合わせることで、多様で、正確なタイプのバリアのグループを制御できます。 たとえば、トレースを実行し、いずれかの開いているデバイスでトレースを停止させたいとします。ただし、このトレースでは、始点から 500 メートルを超える移動を望みません。 これを実行するには、バリア条件を使用して、トレースが停止する開いているデバイスのタイプを制御し、関数バリアを使用して、移動ラインの長さを計算して制限を 500 に設定できます。

関数バリアは割り当て可能な状況をサポートし、バリアがミッドスパンに置かれたラインに対して算出された関数値の一部を返します。

たとえば、パイプ ネットワークで、トレースが 500 メートルに達したときに停止するようにします。 500 メートルの位置はパイプの終端ではない可能性があり、パイプに沿った中間部分である可能性もあります。 この場合、トレースは中間部分で停止しますが、パイプ全体がバリアと見なされます。 トレースの結果で返されるフィーチャは、500 メートル未満になります。 [トレース (Trace)] および [サブネットワーク定義の設定 (Set Subnetwork Definition)] ツールのパラメーターを使用すると、バリアを結果に含めるかどうか制御できます。 前の例では、バリア パイプを含めた場合、トレース結果内のアセットの全長が 500 メートルを超えます。 このようなシナリオでは、[トレース (Trace)] ツールの [結果タイプ] パラメーターの [集約されたジオメトリ] オプションを使用し、部分的なフィーチャを返してさらに正確な結果を得ることができます。 詳細については、「トレースの構成」をご参照ください。

注意:

属性の伝達を使用するとき、同じネットワーク属性に複数のプロパゲーターが構成されている場合、条件バリアと関数バリアは、その層に構成された最初のプロパゲーターで定義される値に対して評価されます。

フィルター

フィルターは、サブネットワーク コントローラーを検出してフロー方向を確立できるように、トレース操作の 2 回目のパスで評価および適用されます。 フィルターには、バリアのフィルターと関数バリアのフィルターの 2 つのタイプがあります。

これらは、トレース ツールを使用して構成されます。これにより、サブネットワーク ベースのトレース操作用にダイナミック バリアを確立できます。 両方のタイプのバリアを同じトレースで使用できます。

フィルターは、ネットワーク属性ネットワーク カテゴリ、または両方の組み合わせを使用して、バリアと見なすフィーチャを決定します (閉じている保護デバイスでの停止など)。 トレースはフィルターの条件を満たすフィーチャに達すると、そこで停止し、それ以上移動しません。

注意:
通過可能性バリア フィーチャが存在する場合、フィルターよりも先に考慮されます。

[トレース (Trace)] ツールの [フィルターの適用] パラメーターを使用して、バリアとして機能するフィーチャのタイプを制御できます。 これは、特定タイプのフィーチャのみで属性値を考慮する状況に適用されます。たとえば、圧力の閾値に達したときのみ、パイプの圧力を考慮したり、トレースを停止したりします。 [最近隣カテゴリ] および [再近隣アセット グループ/タイプ] パラメーターを使用して、バリアとして機能するか、関数の計算時に考慮される特定のタイプのアセットをさらに絞り込むことができます。たとえば、10 PSI を超えるパイプの圧力のみを考慮できます。

上流、下流、およびループ トレースを操作するとき、[bitset ネットワーク属性によるフィルター] パラメーターを使用して、トレースが実世界のシナリオをより細密に反映するように特別なロジックを追加できます。 たとえば、電気ネットワークでループ トレースを実行している場合、phases current ネットワーク属性を使用して、ループが真の電気ループである (ループ全体で同じフェーズに電源が入る) かどうかを判断し、トレース結果の真の電気ループのみを返すことができます。 これにより、ネットワーク属性で指定された有効なパスのみが返されます。

バリアのフィルター

バリアのフィルターはユーザーが定義した式を使用して、サブネットワークでバリアとなるフィーチャを決定します。 バリアのフィルターは、条件バリアに似ており、両方が存在する場合は、条件バリアが先に考慮されます。

分離トレースでは、トレース構成でバリアのフィルターを定義しておく必要があります。これによって、始点 (複数の場合あり) を分離しているフィーチャを特定できるようになります。 トレースを停止するには、特定のネットワーク属性またはネットワーク カテゴリが使用されます。 たとえば、バリアのフィルターは Category = Isolating で使用できます。 この場合、Isolating は、分離と見なされる特定のアセット グループおよびアセット タイプに割り当てられたユーザー定義のネットワーク カテゴリです。 バリアのフィルターを追加して、特定のプロパティを持つバルブを返すこともできます。 たとえば、アクセスおよび操作が可能なバルブ (舗装されていない、またはさび付いていない) のみを返すことができます。

バリアのフィルターは、条件バリアではサブネットワーク コントローラーを検出できず、トレースが失敗する状況で使用できます。 たとえば、lifecycle statusIn Service and To Be Retired を含まないフィーチャを検出したらトレースを停止する場合、デバイスからの上流トレースを考慮します。 トレースがサブネットワーク コントローラーを特定し方向性を決定しようとしているときに、提案済みまたは破棄されたデバイスを検出した場合、トレースは失敗し、有効なサブネットワーク コントローラーが見つからなかったというエラーが表示されます。 これをバリアのフィルターとして構成すると、サブネットワーク コントローラーを特定することができ、始点からのトレースの 2 回目のパスで条件を適用できます。

複数のバリアのフィルターを実装するには、[結合方法] オプション (AND または OR 条件を定義) を使用します。 ネットワーク属性に基づく式によるフィルターは、他のネットワーク属性と比較できます。たとえば、Phase Current 属性値が Phases Built 属性値を含まない場合にトレースを停止します。 別の例として、設置日が 1990 年より後の自治体所有の構造物でトレースを停止する場合があります。

複数の式の使用方法の詳細

関数バリアのフィルター

フィルター関数バリアは条件を使用して、トレースが停止する時期を決定します。 トレースがこの条件を満たしている場合、トレースが停止します。 関数バリアのフィルターは、トレース ツールの [通過可能性] セクションにある関数バリアに似ています。 両方が存在する場合は、関数バリアが、関数バリアのフィルターよりも先に考慮されます。

関数バリアのフィルターは割り当て可能な状況をサポートします。たとえば、パイプ ネットワークで、トレースが 500 メートルに達したときに停止するようにします。 500 メートルの位置はパイプの終端ではない可能性があり、パイプに沿った中間部分である可能性もあります。 この場合、トレースは中間部分で停止しますが、パイプ全体がバリアと見なされます。 トレースの結果で返されるフィーチャは、500 メートル未満になります。 [トレース (Trace)] および [サブネットワーク定義の設定 (Set Subnetwork Definition)] ツールのパラメーターを使用すると、バリアを結果に含めるかどうか制御できます。 前の例では、バリア パイプを含めた場合、トレース結果内のアセットの全長が 500 メートルを超えます。

注意:

[ローカル値の使用] オプションを選択した状態でフィルター関数バリアを使用してトレースを実行する場合、使用できる始点は 1 つのみです。