リニア リファレンス フィーチャ数の生成 (Generate Linear Referenced Feature Count) (Location Referencing)

Location Referencing ライセンスで利用可能です。

サマリー

LRS データ テンプレートを使用せずに LRS ネットワーク内のルートのフィーチャ数データ プロダクトを作成します。

使用法

  • このツールは、ファイル ジオデータベース、エンタープライズ ジオデータベース (ブランチ バージョン対応接続)、フィーチャ サービス (ブランチ バージョン対応データから公開) のデータをサポートしています。

  • このツールでは入力は変更されず、出力として .csv ファイルまたはジオデータベース テーブルが作成されます。

  • [発効日] パラメーターを使用して、ネットワークの時間ビューを定義します。 この日付にアクティブになっているルートだけが出力の計算に使用されます。

  • サマリー レイヤーは、ポリゴン フィーチャクラスであるか、指定した LRS ネットワークに登録されている LRS ライン イベント フィーチャクラスであるか、LRS ネットワークである必要があります。

  • サマリー レイヤーとオーバーラップしていないルートの出力サマリー フィールドには、値として unclassified が設定されます。

  • 複数のサマリー フィールドを追加できます。

  • 出力は、LRS ネットワーク、サマリー レイヤー、フィーチャ数レイヤーから選択されたフィーチャの交差部分に基づいて作成されます。

  • フィーチャ数レイヤーは、LRS ポイント イベント フィーチャクラスまたは LRS ライン イベント フィーチャクラスであるか、指定した LRS ネットワークに登録されている LRS 交点フィーチャクラスである必要があります。

  • フィーチャ数レイヤーとオーバーラップしていないルートの出力フィーチャ数フィールドには、値 unclassified が設定されます。

  • サマリー レイヤーとフィーチャ数レイヤーは、同じジオデータベースまたはフィーチャ サービスに格納され、指定された LRS ネットワークと同じ座標系である必要があります。

  • 複数の選択レイヤーを作成し、各選択レイヤーをフィーチャ数レイヤーとして指定することで、同じフィーチャクラスから複数のフィーチャ数レイヤーを追加できます。 たとえば、LRS ポイント イベント フィーチャクラスがある場合、2 つの選択レイヤー (クラス A とクラス B) を作成して、各選択レイヤーをフィーチャ数レイヤーとして指定できます。

パラメーター

ラベル説明データ タイプ
入力ルート フィーチャ

フィーチャ数データ プロダクトの作成に使用されるルート フィーチャ。

Feature Layer
発効日

ネットワークの時間ビューの定義に使用される日付。

デフォルト値は、今日の日付です。

Date
サマリー フィールド
(オプション)

出力でサマリー行の名前の表示に使用されるフィールド。

  • レイヤー - サマリー レイヤーとして使用されるフィーチャ レイヤー。
  • フィールド - フィーチャ数の集計に使用されるフィールド。
  • 出力フィールド名 - 出力のサマリー フィールドの表示名。

Value Table
フィーチャ数レイヤー
(オプション)

ルート上のフィーチャの数を特定するときに使用されるレイヤー。

  • レイヤー - フィーチャ数レイヤーとして使用されるフィーチャ レイヤー。
  • 出力フィールド名 - 出力のフィーチャ数レイヤーの表示名。

Value Table
NULL のサマリー行を除外
(オプション)

NULL のサマリー行を出力から除外するかどうかを指定します。

  • オン - フィーチャ数がゼロの行 (NULL のサマリー行) は出力から除外されます。 これがデフォルトです。
  • オフ - フィーチャ数がゼロの行 (NULL のサマリー行) は出力から除外されません。
Boolean
出力形式
(オプション)

出力の形式を指定します。

  • CSV.csv ファイルが出力されます。 これがデフォルトです。
  • テーブルジオデータベース テーブルが出力されます。
String
出力ファイル
(オプション)

フィーチャ数データ プロダクトが格納される出力 .csv ファイル。

File
出力テーブル
(オプション)

フィーチャ数データ プロダクトが格納される出力ジオデータベース テーブル。

Table

arcpy.locref.GenerateLRFeatureCount(in_route_features, effective_date, {summary_fields}, {feature_count_layers}, {exclude_null_summary_rows}, {output_format}, {out_file}, {out_table})
名前説明データ タイプ
in_route_features

フィーチャ数データ プロダクトの作成に使用されるルート フィーチャ。

Feature Layer
effective_date

ネットワークの時間ビューの定義に使用される日付。

デフォルト値は、今日の日付です。

Date
summary_fields
[summary_fields,...]
(オプション)

出力でサマリー行の名前の表示に使用されるフィールド。

  • レイヤー - サマリー レイヤーとして使用されるフィーチャ レイヤー。
  • フィールド - フィーチャ数の集計に使用されるフィールド。
  • 出力フィールド名 - 出力のサマリー フィールドの表示名。

Value Table
feature_count_layers
[feature_count_layers,...]
(オプション)

ルート上のフィーチャの数を特定するときに使用されるレイヤー。

  • レイヤー - フィーチャ数レイヤーとして使用されるフィーチャ レイヤー。
  • 出力フィールド名 - 出力のフィーチャ数レイヤーの表示名。

Value Table
exclude_null_summary_rows
(オプション)

NULL のサマリー行を出力から除外するかどうかを指定します。

  • EXCLUDEフィーチャ数がゼロの行 (NULL のサマリー行) は出力から除外されます。 これがデフォルトです。
  • DO_NOT_EXCLUDEフィーチャ数がゼロの行 (NULL のサマリー行) は出力から除外されません。
Boolean
output_format
(オプション)

出力の形式を指定します。

  • CSV.csv ファイルが出力されます。 これがデフォルトです。
  • TABLEジオデータベース テーブルが出力されます。
String
out_file
(オプション)

フィーチャ数データ プロダクトが格納される出力 .csv ファイル。

File
out_table
(オプション)

フィーチャ数データ プロダクトが格納される出力ジオデータベース テーブル。

Table

コードのサンプル

GenerateLRFeatureCount の例 1 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトは、スタンドアロン スクリプトで GenerateLRFeatureCount 関数を使用する方法を示しています。

# Name: GenerateLRFeatureCount_ex1.py 
# Description: Create a feature count data product that provides the number of active anomalies, pipeline crossings, and DOT Class line events per route
# Requirements: ArcGIS Location Referencing  
 
# Import arcpy module 
import arcpy 
 
# Check out any necessary licenses 
arcpy.CheckOutExtension("LocationReferencing")

# Set current workspace  
arcpy.env.workspace = r"C:\Data\SampleData.gdb" 

# Using the Anomaly point event feature class, create a feature layer that contains active anomalies, to be used as a feature count layer
arcpy.management.MakeFeatureLayer("Anomaly", "Anomaly_Active", "anomalystatus = 'Active'")

# Using the DOT Class line event feature class, create 3 feature layers, each representing a class type, to be used as feature count layers
arcpy.management.MakeFeatureLayer("DOTClass", "Class_A", "classtype = 1") 
arcpy.management.MakeFeatureLayer("DOTClass", "Class_B", "classtype = 2")   
arcpy.management.MakeFeatureLayer("DOTClass", "Class_C", "classtype = 3")

# Set tool variables 
in_route_features = "EngineeringNetwork" 
effective_date = "12/31/2024" 
summary_fields = "Counties NAME Counties"
feature_count_layers = "Anomaly_Active 'Anomaly'; PipeCrossing 'Pipe Crossings'; Class_A 'Class A'; Class_B 'Class B'; Class_C 'Class C'"
exclude_null_summary_rows = "EXCLUDE"
output_format = "TABLE" 
out_file = None
out_table = r"C:\Data\SampleData.gdb\FC1" 

# Run the tool 
arcpy.locref.GenerateLRFeatureCount(in_route_features, effective_date, summary_fields, feature_count_layers, exclude_null_summary_rows, output_format, out_file, out_table) 

# Check in licenses 
arcpy.CheckInExtension("LocationReferencing")
GenerateLRFeatureCount の例 2 (Python ウィンドウ)

次のスクリプトは、Python ウィンドウでの GenerateLRFeatureCount 関数の使用方法を示しています。

# Name: GenerateLRFeatureCount_ex2.py 
# Description: Create a feature count data product that provides the number of bridges and intersections per route
# Requirements: ArcGIS Location Referencing  

# Set tool variables 
in_route_features = "CountyLog" 
effective_date = "12/31/2024" 
summary_fields = "Counties NAME Counties"
feature_count_layers = "Bridge_Point 'Bridges'; Intersections 'Intersections'"
exclude_null_summary_rows = "EXCLUDE"
output_format = "TABLE" 
out_file = None 
out_table = r"C:\Data\SampleData.gdb\FC2"
 
# Run the tool 
arcpy.locref.GenerateLRFeatureCount(in_route_features, effective_date, summary_fields, feature_count_layers,
                                    exclude_null_summary_rows, output_format, out_file, out_table)
GenerateLRFeatureCount の例 3 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトは、フィーチャ サービスのデータで GenerateLRFeatureCount 関数を使用する方法を示しています。

# Name: GenerateLRFeatureCount_ex3.py 
# Description: Create a feature count data product that provides the number of active anomalies, pipeline casing material types, and crossing utility intersections per route
# Requirements: ArcGIS Location Referencing  
 
# Import arcpy module 
import arcpy 
 
# Check out the license 
arcpy.CheckOutExtension("LocationReferencing") 
 
# Data is in a feature service. Signing in to the Enterprise portal is required to access the feature service
arcpy.SignInToPortal('https://yourdomain.com/portal', 'username', 'password')
 
# Map the LRS Network from the feature service. Here, 49 corresponds to the LRS Network's layer ID
in_route_features = r"https://yourdomain.com/server/rest/services/FeatureServiceName/FeatureServer/49"

# Create a feature layer from the Cities layer of the feature service to be used as the summary layer. Here, 21 corresponds to the Cities layer's layer ID
arcpy.management.MakeFeatureLayer(r"https://yourdomain.com/server/rest/services/FeatureServiceName/FeatureServer/21", "Cities")

# Create the feature layers from the feature service. The feature layers will be used as feature count layers
arcpy.management.MakeFeatureLayer(r"https://yourdomain.com/server/rest/services/FeatureServiceName/FeatureServer/18", "Anomaly_Active", "anomalystatus = 'Active'")
arcpy.management.MakeFeatureLayer(r"https://yourdomain.com/server/rest/services/FeatureServiceName/FeatureServer/54", "Casing_CastIron", "MATERIAL = 2")
arcpy.management.MakeFeatureLayer(r"https://yourdomain.com/server/rest/services/FeatureServiceName/FeatureServer/54", "Casing_Copper", "MATERIAL = 4")
arcpy.management.MakeFeatureLayer(r"https://yourdomain.com/server/rest/services/FeatureServiceName/FeatureServer/54", "Casing_Composite", "MATERIAL = 10")
arcpy.management.MakeFeatureLayer(r"https://yourdomain.com/server/rest/services/FeatureServiceName/FeatureServer/61", "Crossing_Utility_Intersection")

# Set tool variables 
effective_date = "12/31/2024" 
summary_fields = "Cities NAME Cities"
feature_count_layers = "Anomaly_Active 'Anomalies'; Casing_CastIron 'Cast Iron Casing'; Casing_Copper 'Copper Casing'; Casing_Composite 'Composite Casing'; Crossing_Utility_Intersection 'Crossing Utility Intersections'"
exclude_null_summary_rows = "EXCLUDE"
output_format = "CSV" 
out_file = r"C:\Data\FC3.csv"
out_table = None

# Run the tool 
arcpy.locref.GenerateLRFeatureCount(in_route_features, effective_date, summary_fields, feature_count_layers,
                                    exclude_null_summary_rows, output_format, out_file, out_table)
 
# Check in the license 
arcpy.CheckInExtension("LocationReferencing")

ライセンス情報

  • Basic: 次のものが必要 ArcGIS Location Referencing (ArcGIS Pipeline Referencing または ArcGIS Roads and Highways)
  • Standard: 次のものが必要 ArcGIS Location Referencing (ArcGIS Pipeline Referencing または ArcGIS Roads and Highways)
  • Advanced: 次のものが必要 ArcGIS Location Referencing (ArcGIS Pipeline Referencing または ArcGIS Roads and Highways)

関連トピック