フィーチャ ロケーターの作成 (Create Feature Locator) (ジオコーティング)

サマリー

1 つのフィールドに格納されているすべてのフィーチャの一意の名前または値を含む参照データを使用してロケーターを作成します。 このツールで作成したロケーターには、幅広い応用があります。 これを使用して、水道メーター、短い地名、無線基地局、または位置の特定に使用される英数字の文字列 (たとえば、N1N115) など、フィーチャの名前や一意の属性を検索できます。

このツールで作成したロケーターは、単一フィールド内のインデックス付けされた値を使用して、その単一フィールド内の値を検索してポイントのコレクションとして値を返すか、ポイント位置に近いフィーチャを特定します。 このツールで作成したロケーターを使用してジオコーディングできる住所のテーブルには、位置を特定するために使用できる同じ一意の名前または値の単一フィールドが必要です。

注意:

このツールで作成したロケーターは、ArcGIS Pro 2.5 以降および Enterprise 10.8 以降で使用可能で、ArcMap のロケーター サービスとして使用できます。 このツールで作成したロケーターを ArcMap のローカル ロケーターとして使用することはできません。

使用法

  • サービスとして表されるフィーチャクラスは、参照データに使用できるデータ タイプとしてサポートされています。

  • このツールは、参照データとしてポイントおよびポリゴン ジオメトリを含むフィーチャクラスをサポートしています。

  • このツールで作成したロケーターを使用すると、5 単語以下の一意の識別子または短い文字列値を検索できます。

  • このツールによって作成されたロケーターでは、座標 (MGRS、DD、UTM など) のグローバル検索がサポートされています。 ロケーターの構築に使用されるプライマリ参照データに少なくとも 1 つのフィーチャが含まれている必要があります。 座標の検索のサポートは、ロケーターの [ロケーターのプロパティ] ダイアログの [ジオコーディング オプション] ページにある [サポートするカテゴリ] で有効化/無効化します。

  • このツールの出力は [コンポジット住所ロケーターの作成 (Create Composite Address Locator)] ツールへの入力として使用できます。 ただし、コンポジット ロケーターで、このツールで作成されたロケーターを他の住所ロールベース ロケーターと組み合わせる際には、注意して処理する必要があります。なぜなら、[名前] フィーチャ ロケーター ロール フィールドのフィールド マッピングによって、予期しない動作が発生する可能性があるためです。 [POI] ロールに基づいて [ロケーターの作成 (Create Locator)] ツールで作成されたロケーターを使用することをお勧めします。

パラメーター

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

ロケーターを作成するために使用される参照データのフィーチャクラスまたはフィーチャ レイヤー。

サービスとして表されるフィーチャクラスは、参照データに使用できるデータ タイプとしてサポートされています。

注意:

参照データにフィルター設定が定義されているか、フィーチャが選択されている場合、ロケーターを作成するときは、クエリおよび選択されたフィーチャのみが含められます。

注意:

数百万のフィーチャで構成された参照データを含むロケーターを作成する場合は、一時ディレクトリが配置されるドライブ上に、サイズが通常の 3 ~ 4 倍以上のデータを書き込めるディスク空き容量が必要となります。これは、このロケーターが出力場所にコピーされる前に、このロケーターの構築に使用されるファイルがドライブ上の場所に書き込まれるためです。 十分なディスク空き容量がない場合は、このツールで容量不足エラーが発生します。 また、大きなロケーターを作成している場合、大量のメモリを消費するプロセスを処理するために、コンピューターに十分な RAM が搭載されている必要があります。

Feature Layer
検索フィールド

参照データ フィールドを [入力フィーチャ] パラメーター内で検索に使用されるフィールドにマッピングします。 名前の横にアスタリスク (*) の付いたフィールドは必須です。 選択したフィールドにはインデックスが付けられ、検索に使用されます。

Field Info
出力ロケーター

ファイル フォルダーに作成される出力ロケーター ファイル。 ロケーターが作成されると、追加のプロパティとオプションをロケーターの設定で変更できます。

Address Locator
追加のロケーター フィールド
(オプション)

データ内に範囲とランクが存在する場合に、それらの追加フィールドをマッピングします。 Rank フィールドは、同じ名前とスコアを持つあいまいなクエリの結果や候補を並べ替えるために使用されます。 範囲フィールドは、ジオコーディング結果を表示するマップ範囲の設定に役立ちます。

Field Info

arcpy.geocoding.CreateFeatureLocator(in_features, search_fields, output_locator, {locator_fields})
名前説明データ タイプ
in_features

ロケーターを作成するために使用される参照データのフィーチャクラスまたはフィーチャ レイヤー。

サービスとして表されるフィーチャクラスは、参照データに使用できるデータ タイプとしてサポートされています。

注意:

参照データにフィルター設定が定義されているか、フィーチャが選択されている場合、ロケーターを作成するときは、クエリおよび選択されたフィーチャのみが含められます。

注意:

数百万のフィーチャで構成された参照データを含むロケーターを作成する場合は、一時ディレクトリが配置されるドライブ上に、サイズが通常の 3 ~ 4 倍以上のデータを書き込めるディスク空き容量が必要となります。これは、このロケーターが出力場所にコピーされる前に、このロケーターの構築に使用されるファイルがドライブ上の場所に書き込まれるためです。 十分なディスク空き容量がない場合は、このツールで容量不足エラーが発生します。 また、大きなロケーターを作成している場合、大量のメモリを消費するプロセスを処理するために、コンピューターに十分な RAM が搭載されている必要があります。

Feature Layer
search_fields

参照データ フィールドを in_features パラメーター内で検索に使用されるフィールドにマッピングします。 search_fields マッピングは次の形式で行われます。ここで、<locator field name> はロケーターの役割によってサポートされるフィールドの名前、<data field name>in_features パラメーター内で検索に使用されるフィールド名です。

# <locator field name> <data field name>

# This shows an example:
reference_data_field_map = """
"'Name' AssetName"
"""

選択したフィールドにはインデックスが付けられ、検索に使用されます。 in_features パラメーター内の参照データに対する関連フィールドをマッピングします。

Field Info
output_locator

ファイル フォルダーに作成される出力ロケーター ファイル。 ロケーターが作成されると、追加のプロパティとオプションをロケーターの設定で変更できます。

Address Locator
locator_fields
(オプション)

データ内に範囲ランクが存在する場合に、それらの追加フィールドをマッピングします。 Rank フィールドは、同じ名前とスコアを持つあいまいなクエリの結果や候補を並べ替えるために使用されます。 範囲フィールドは、ジオコーディング結果を表示するマップ範囲の設定に役立ちます。 locator_fields のマッピングは、次の形式で行われます。

# <additional locator field name> <additional data field name>

# This shows an example:
additional_fields_map = """
"'Rank' RANK;'Min X' Xmin;
'Max X' Xmax;'Min Y' Ymin;
'Max Y' Ymax"
"""

<additional locator field name> フィールドはロケーターによってサポートされる追加フィールドの名前を表します。また、<additional data field name> フィールドは in_features パラメーターのフィールド名を表します。 in_features パラメーター内の参照データに対する関連フィールドをマッピングします。

Field Info

コードのサンプル

CreateFeatureLocator (フィーチャ ロケーターの作成) の例 1 (スタンドアロン スクリプト)

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

# Description: Create a feature locator using local data.

# Import system modules
import arcpy

# Set local variables
in_features = r"C:\data\arizona.gdb\az_points"
search_field = "*Name NAME VISIBLE NONE"
output_locator = r"C:\output\locators\az_points_locator"
locator_fields = "Rank <None> VISIBLE NONE;'Min X' <None> VISIBLE NONE;'Max X' <None> VISIBLE NONE;'Min Y' <None> VISIBLE NONE;'Max Y' <None> VISIBLE NONE"

# Execute CreateFeatureLocator
arcpy.geocoding.CreateFeatureLocator(in_features, search_field, output_locator, 
                                     locator_fields)
CreateFeatureLocator (フィーチャ ロケーターの作成) の例 2 (スタンドアロン スクリプト)

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

# Description: Create a feature locator using data from a hosted feature service in ArcGIS Online.

# Import system modules
import arcpy

# Sign in to Portal
arcpy.SignInToPortal("https://www.arcgis.com", "<username>", "<password>")

# Set local variables
in_features = "https://services.arcgis.com/<layer_id>/arcgis/rest/services/<service_name>/FeatureServer/<layer_number>"
search_field = "*Name NAME VISIBLE NONE"
output_locator = r"C:\output\locators\service_locator"
locator_fields = "Rank <None> VISIBLE NONE;'Min X' <None> VISIBLE NONE;'Max X' <None> VISIBLE NONE;'Min Y' <None> VISIBLE NONE;'Max Y' <None> VISIBLE NONE"

arcpy.geocoding.CreateFeatureLocator(in_features, search_field, output_locator, 
                                     locator_fields)

環境

特殊なケース

ライセンス情報

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

関連トピック