ArcGIS for Desktop

  • Документация
  • Стоимость
  • Поддержка

  • My Profile
  • Справка
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS for Desktop

Полноценная профессиональная ГИС

ArcGIS for Server

ГИС предприятия

ArcGIS for Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Стоимость
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

Справка

  • Главная
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительно...

Выбрать в слое по расположению

  • Краткая информация
  • Использование
  • Синтаксис
  • Пример кода
  • Параметры среды
  • Информация о лицензировании

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

Выбирает объекты в слое на основе пространственных отношений с объектами в другом слое.

Каждый объект во Входном векторном слое (Input Feature Layer) сравнивается с объектами в слое Вспомогательные объекты выборки (Selecting Features) или классом объектов; если входной объект соответствует значению в параметре Отношения (Relationship), он выбирается.

Графические примеры отношений

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

  • Входными данными должен быть векторный слой; это не может быть класс пространственных объектов.

  • Этот инструмент применяется для слоев ArcMap, ArcGlobe или ArcScene, а также для слоев, созданных в моделях и скриптах с помощью инструмента Создать векторный слой (Make Feature Layer).

  • Система координат, в которой оцениваемое пространственное отношение может влиять на результат. Объекты, пересекающиеся в одной системе координат, могут пересекаться или не пересекаться в другой системе.

    • Данный инструмент оценивает пространственные отношения в системе координат источника данных Входного векторного слоя (Input Feature Layer) (класса пространственных объектов на диске). Задайте среду выходной системы координат (output coordinate system environment) для оценки пространственных отношений в другой системе координат.

  • Этот инструмент может использоваться для выбора пространственных объектов на основе их пространственных отношений к другим объектам в том же слое. Некоторые примеры см. в разделе Выбрать в слое по расположению (Select by location within a layer).

  • Инструмент Посчитать строки (Get Count) может использоваться, чтобы найти пространственные объекты, выбранные инструментом Выбрать в слое по расположению (Select Layer By Location). Он может быть полезен, если надо определить, подошли ли объекты под необходимое пространственное отношение, перед продолжением анализа в рамках автоматизированного рабочего процесса (то есть скрипта или модели).

  • Подробнее об использовании трехмерных пространственных отношений INTERSECT_3D и WITHIN_A_DISTANCE_3D, см. раздел Отношения Выборка по расположению 3D (Select by location 3D relationships).

Синтаксис

SelectLayerByLocation_management (in_layer, {overlap_type}, {select_features}, {search_distance}, {selection_type}, {invert_spatial_relationship})
ПараметрОбъяснениеТип данных
in_layer

Слой, содержащий объекты, которые будут оцениваться в сравнении со вспомогательными объектами выборки (select_features). К этому слою будет применяться выборка. Входными данными не может быть путь к классу пространственных объектов на диске.

Feature Layer; Mosaic Layer; Raster Catalog Layer
overlap_type
(дополнительно)

Оцениваемое пространственное отношение.

  • INTERSECT —Объекты во входном слое будут выбраны, если они пересекаются со вспомогательным объектом выборки. Это значение используется по умолчанию.
  • INTERSECT_3D —Объекты во входном слое будут выбраны, если они пересекаются со вспомогающим объектом выборки в трехмерном пространстве (x, y и z).
  • WITHIN_A_DISTANCE —Объекты во входном слое будут выбраны, если они находятся в пределах указанного расстояния от вспомогательного объекта выборки. Задайте расстояние для параметра Расстояние поиска (Search Distance).
  • WITHIN_A_DISTANCE_3D —Объекты во входном слое будут выбраны, если они находятся в пределах указанного расстояния от вспомогательного объекта выборки в трехмерном пространстве. Задайте расстояние для параметра Расстояние поиска (Search Distance).
  • WITHIN_A_DISTANCE_GEODESIC —Объекты во входном слое будут выбраны, если они находятся в пределах указанного расстояния от вспомогательного объекта выборки. Расстояние между объектами можно вычислить, используя геодезический метод, учитывающий кривизну земной поверхности и корректно обрабатывающий данные, расположенные недалеко линии дат и вдоль них и околополярные области.
  • CONTAINS —Объекты во входном слое будут выбраны, если они содержат вспомогательный объект выборки.
  • COMPLETELY_CONTAINS —Объекты во входном слое будут выбраны, если они полностью содержат вспомогательный объект выборки.
  • CONTAINS_CLEMENTINI —Это пространственное отношение дает те же результаты, что и COMPLETELY_CONTAINS, за исключением ситуаций, когда выбранный объект находится целиком на границе входного объекта (ни одна его часть не находится внутри или за пределами); в этом случае объект выбран не будет. Опция Клементини предполагает, что граница полигона – это линия, отделяющая внутреннюю область полигона от внешней, граница линии – это ее конечные точки, а граница точки всегда является пустой.
  • WITHIN —Объекты во входном слое будут выбраны, если они находятся в пределах вспомогательного объекта выборки.
  • COMPLETELY_WITHIN —Объекты во входном слое будут выбраны, если они находятся полностью внутри или содержатся во вспомогательном объекте выборки.
  • WITHIN_CLEMENTINI —Результат будет идентичен использованию WITHIN, за исключением ситуации, если объект входного слоя полностью находится на границе объекта в слое вспомогательных объектов выборки, объект не будет выбран. Опция Клементини предполагает, что граница полигона – это линия, отделяющая внутреннюю область полигона от внешней, граница линии – это ее конечные точки, а граница точки всегда является пустой.
  • ARE_IDENTICAL_TO —Объекты во входном слое будут выбраны, если они идентичны (по геометрии) вспомогательному объекту выборки.
  • BOUNDARY_TOUCHES —Объекты во входном слое будут выбраны, если их границы соприкасаются со вспомогательным объектом выборки. Если входные объекты являются линиями или полигонами, граница входного объекта может только касаться границы выделенного объекта, и ни одна часть входного объекта не может пересекать границу выделенного.
  • SHARE_A_LINE_SEGMENT_WITH —Объекты во входном слое будут выбраны, если они имеют общий линейный сегмент со вспомогательным объектом выборки. Входные и выбираемые объекты должны быть линиями или полигонами.
  • CROSSED_BY_THE_OUTLINE_OF —Объекты во входном слое будут выбраны, если они пересекаются внешней линией вспомогательного объекта выборки. Входные и выбираемые объекты должны быть линиями или полигонами. Если полигоны используются для входных данных или выбранных слоев, будет использоваться граница (линия) полигона. Будут выбраны линии, которые пересекаются в точке, а не те, которые образуют общий линейный сегмент.
  • HAVE_THEIR_CENTER_IN —Объекты во входном слое будут выбраны, если их центр попадает в пределы вспомогательного объекта выборки. Центр объекта вычисляется следующим образом: для полигонального и мультиточечного объекта используется его геометрический центроид, а для линии используется ее геометрическая середина.
String
select_features
(дополнительно)

Пространственные объекты в слое входных объектов будут выбираться на основе их отношения к пространственным объектам из этого слоя или класса пространственных объектов.

Feature Layer
search_distance
(дополнительно)

Параметр допустим, только если параметр overlap_type имеет одно из следующих значений: WITHIN_A_DISTANCE_GEODESIC, WITHIN_A_DISTANCE, WITHIN_A_DISTANCE_3D, INTERSECT, INTERSECT_3D, HAVE_THEIR_CENTER_IN, CONTAINS, или WITHIN.

Если используется опция WITHIN_A_DISTANCE_GEODESIC, должна быть задана линейная единица измерения, такая как километры или мили.

Linear unit
selection_type
(дополнительно)

Определяет, как выборка будет применяться к входным данным и как она будет комбинироваться с существующей выборкой. Обратите внимание, что здесь нет опции для очистки существующей выборки. Чтобы очистить выборку, используйте опцию CLEAR_SELECTION инструмента Выбрать в слое по атрибуту (Select Layer By Attribute).

  • NEW_SELECTION —Результирующая выборка заменяет любую существующую выборку. Это значение используется по умолчанию.
  • ADD_TO_SELECTION —Результирующая выборка добавляется к существующей выборке, если таковая существует. Если никакой выборки не существует, данная опция работает так же, как опция NEW_SELECTION.
  • REMOVE_FROM_SELECTION —Результирующая выборка удаляется из существующей выборки. Если выборки нет, операция не будет иметь действия.
  • SUBSET_SELECTION —Результирующая выборка комбинируется с существующей выборкой. Выбранными останутся только те записи, которые являются общими для обеих выборок.
  • SWITCH_SELECTION —Переключает выборку. Все записи, которые были выбраны, удаляются из выборки, а все ранее невыбранные записи становятся выбранными. Параметры select_features и overlap_type игнорируются, если выбрана эта опция.
String
invert_spatial_relationship
(дополнительно)

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

  • NOT_INVERT —Результат выполнения запроса не будет инвертирован. Это значение используется по умолчанию.
  • INVERT —Результат выполнения запроса будет инвертирован. Инвертирование происходит перед тем, как выборка будет комбинирована с имеющимися при использовании опции selection_type.
Boolean

Пример кода

SelectLayerByLocation, пример 1 (окно Python)

Пример скрипта окна Python для использования функции SelectLayerByLocation в режиме прямого запуска.

import arcpy

# First, make a layer from the feature class
arcpy.MakeFeatureLayer_management("c:/kamsack.gdb/parcel", "parcel_lyr")

# Then add a selection to the layer based on location to features in another feature class 
arcpy.SelectLayerByLocation_management ("parcel_lyr", "have_their_center_in", "c:/kamsack.gdb/city_limits")
SelectLayerByLocation, пример 2 (автономный скрипт)

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

# Name: ExtactFeaturesByLocationAndAttribute.py
# Description: Extract features to a new feature class based on a Location and an attribute query

# Import arcpy and set path to data
import arcpy
arcpy.env.workspace = "c:/data/mexico.gdb"

# Make a layer and select cities which overlap the chihuahua polygon
arcpy.MakeFeatureLayer_management('cities', 'cities_lyr') 
arcpy.SelectLayerByLocation_management('cities_lyr', 'intersect', 'chihuahua')
 
# Within the previous selection sub-select cities which have population > 10,000
arcpy.SelectLayerByAttribute_management('cities_lyr', 
                                        'SUBSET_SELECTION', 
                                        '"population" > 10000')

# If features matched criteria write them to a new feature class
matchcount = int(arcpy.GetCount_management('cities_lyr')[0]) 
if matchcount == 0:
    print('no features matched spatial and attribute criteria')
else:
    arcpy.CopyFeatures_management('cities_lyr', 'chihuahua_10000plus')
    print('{0} cities that matched criteria written to {0}'.format(
                                                  matchcount, chihuahua_10000plus))

Параметры среды

  • Текущая рабочая область (Current Workspace)
  • Выходная система координат (Output Coordinate System)

Связанные темы

  • Обзор группы инструментов Слои и представления таблицы (Layers and Table Views)
  • Использование слоев и представлений таблиц
  • Работа со слоями и представлениями таблиц
  • Создание и использование выборки слоев
  • Использование Выбрать по расположению (диалоговое окно ArcMap)
Отзыв по этому разделу?

ArcGIS for Desktop

  • На главную
  • Документация
  • Стоимость
  • Поддержка

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог сотрудников
  • Конференция пользователей
  • Саммит разработчиков
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Конфиденциальность | Правовая информация