Создать локатор объектов (Геокодирование)

Краткая информация

Создает локатор на основе базовых данных, содержащих в одном поле уникальное имя или значение для каждого объекта. Локатор, созданный этим инструментом, может применяться очень широко. Его можно использовать для поиска имен или уникальных атрибутов ваших объектов, к примеру, счетчиков воды, кратких названий мест, вышек сотовой связи или буквенно-цифровых строк, используемых для определения местоположения (например, N1N115).

Локаторы, созданные этим инструментом, будут использовать индексированные значения в одном поле для поиска значений в одном поле и их возврата в виде набора точек или поиска объектов вблизи местоположения точки. При геокодировании таблиц адресов с использованием локатора, созданного этим инструментом, они также должны содержать одиночное поле с таким же уникальным именем или значением, которое может использоваться для идентификации местоположений.

Примечание:

Созданные с помощью этого инструмета локаторы можно использовать в ArcGIS Pro 2.5 и позднее, Enterprise 10.8 и позднее, а также как сервис локаторов в ArcMap. Созданные с помощью этого инструмента локаторы нельзя использовать как локальные локаторы в ArcMap.

Использование

  • Классы объектов, представленные в виде сервисов, поддерживаются типами данных для использования в качестве базовых данных.

  • Инструмент поддерживает классы объектов, которые используют точечную и полигональную геометрию в качестве базовых данных.

  • Созданный этим инструментом локатор можно использовать для поиска уникальных идентификаторов или коротких текстовых строк не длиннее пяти слов.

  • Локаторы, созданные с помощью этого инструмента, подерживают глобальный поиск для координат (MGRS, DD, UTM и в других форматах). Как минимум один объект должен быть включен в основные базовые данные для построения локатора. Поддержка поиска координат отключена или включена в разделе Категории для поддержки на странице Опции геокодирования диалогового окна Свойства локатора для локатора.

  • Выходные данные этого инструмента могут использоваться как входные данные для инструмента Создать составной локатор адресов. Однако к объединению локатора, созданного с помощью этого инструмента, с другими локаторами, основанными на ролях адресов, в составном локаторе следует относиться с осторожностью, потому что сопоставление полей поля роли локатора пространственных объектов Имя может привести к некорректным результатам. Вместо этого рекомендуется использовать локатор, созданный с помощью инструмента Создать локатор на основе роли Точка интереса.

Параметры

ПодписьОписаниеТип данных
Входные объекты

Класс пространственных объектов или векторный слой базовых данных, который будет использоваться для создания локатора.

Классы объектов, представленные в виде сервисов, поддерживаются типами данных для использования в качестве базовых данных.

Внимание:

Если для базовых данных задан определяющий запрос или имеются выбранные объекты, при создании локатора будут включены только запрошенные и выбранные объекты.

Примечание:

При создании локатора с базовыми данными, содержащими миллионы пространственных объектов, необходимо иметь по крайней мере в 3-4 раза больший размер свободного пространства на диске, где находится директория temp, поскольку файлы, используемые для создания локатора, записываются в это местоположение перед копированием локатора в выходное местоположение. Если у вас недостаточно места на жестком диске, произойдет сбой, когда свободное место закончится. Также, что при создании очень больших локаторов, на компьютере должно быть достаточное количество 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 раза больший размер свободного пространства на диске, где находится директория temp, поскольку файлы, используемые для создания локатора, записываются в это местоположение перед копированием локатора в выходное местоположение. Если у вас недостаточно места на жестком диске, произойдет сбой, когда свободное место закончится. Также, что при создании очень больших локаторов, на компьютере должно быть достаточное количество 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: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы