Подпись | Описание | Тип данных |
Входные объекты | Входные объекты могут быть точками, полилиниями, полигонами или мультиточками. | Feature Layer |
Ближайшие объекты | Один или несколько слоев или классов пространственных объектов, содержащих потенциальные ближайшие объекты. Ближайшие объекты могут быть точками, полилиниями, полигонами или мультиточками. Если задано несколько слоев или классов объектов, во входную таблицу будет добавлено поле NEAR_FC, в котором для каждого ближайшего объекта будет указан путь к его исходному классу объектов. Один и тот же класс объектов или слой можно использовать как в качестве входных объектов, так и в качестве ближайших объектов. | Feature Layer |
Выходная таблица |
Выходная таблица, содержащая результаты анализа. | Table |
Радиус поиска (Дополнительный) | Радиус, который будет использоваться для поиска ближайших объектов. Если значение не указано, в вычисления будут включены все ближайшие объекты. Если расстояние введено, но единица измерения не задана или неизвестна, будут использоваться единицы системы координат входных объектов. Если используется опция Геодезический для параметра Метод, используйте линейные единицы измерения, такие как километры или мили. | Linear Unit |
Местоположение (Дополнительный) | Определяет, будут ли координаты x и y местоположения входного объекта и ближайшего местоположения ближайшего объекта записаны в поля FROM_X, FROM_Y, NEAR_X и NEAR_Y.
| Boolean |
Угол (Дополнительный) | Определяет, будут ли вычислены и записаны в поле NEAR_ANGLE выходной таблицы угловые направления к ближайшим объектам. Угол до ближайшего объекта измеряет направление линии, соединяющей входной объект и ближайший объект по кратчайшему расстоянию. Когда для параметра Метод используется значение Планарный, угол будет находиться в диапазоне от -180° до 180°, где 0° - восток, 90° - север, 180° (или -180°) - запад и -90° - юг. Когда для параметра Метод используется значение Геодезический, угол будет находиться в диапазоне от -180° до 180°, где 0° - север, 90° - восток, 180° (или -180°) - юг и -90° - запад.
| Boolean |
Найти только ближайшие объекты (Дополнительный) | Указывает, будет ли в выходную таблицу записываться только ближайший объект.
| Boolean |
Максимальное число ближайших совпадений (Дополнительный) | Ограничивает число ближайших объектов, указываемых для каждого входного объекта. Этот параметр неактивен, если включен параметр Найти только ближайший объект. | Long |
Метод (Дополнительный) | Определяет, будет ли инструмент использовать кратчайший путь на сфероиде (геодезический) или на плоской земной поверхности (плоскостной). Рекомендуется использовать метод Геодезические, если данные хранятся в координатной системе, не подходящей для измерения расстояний (такой как Web Mercator и все географические системы координат), или если набор данных охватывает большую географическую область.
| String |
Единицы измерения расстояния (Дополнительный) | Задает единицы измерения значений для поля NEAR_DIST. Если единицы измерения не заданы, значения в поле NEAR_DIST будут храниться в единицах измерения системы координат входных объектов. Если входные данные хранятся в географической системе координат и используется геодезический метод, единицами в поле NEAR_DIST будут метры.
| String |
Сопоставление полей (Дополнительный) | Пары полей из входных и ближайших объектов, которые будут использоваться для сопоставления атрибутов. При расчете близких объектов будут использоваться только те близкие объекты, значения сопоставляемых полей которых совпадают со значениями входных объектов. | Value Table |
Краткая информация
Вычисляет расстояние и другую информацию о близости объектов в одном или нескольких классах пространственных объектов или слоях. В отличие от инструмента Ближайший объект, обновляющего входные данные, инструмент Построить таблицу соседних объектов записывает результаты в новую автономную таблицу и позволяет находить несколько ближайших объектов.
Более подробно о вычислении близости с помощью инструментов геообработки
Иллюстрация

Использование
Выходная таблица будет содержать следующие поля:
- IN_FID— идентификатор входного объекта.
- NEAR_FID— идентификатор ближайшего объекта.
- NEAR_DIST— Расстояние от входного до ближайшего объекта. Если значением параметра Метод является Геодезический, и входные объекты заданы в географической системе координат, значения в этом поле указываются в линейных единицах измерения системы координат входных объектов или метрах.
- NEAR_FC— Путь к классу объектов, содержащему ближайший объект. Это поле добавляется в выходную таблицу только в том случае, если указано несколько значений Ближайших объектов.
- NEAR_RANK— Целочисленное значение, ранжирующее все ближайшие объекты по их близости к данному входному объекту. Ближайший объект получит значение 1, следующий по близости – 2 и т.д.
Если отмечен параметр Местоположение, в выходную таблицу будут добавлены следующие поля. Единицы измерения значений в поле зависят от значения параметра Метод. Если для параметра Метод задано Плоскостной, значение в поле будет содержаться в линейных единицах измерения системы координат входных объектов. Если выбран Геодезический метод, значение в поле будет храниться в географической системе координат, связанной с системой координат входных объектов.
- FROM_X– X-координата местоположения входного объекта, который находится ближе всего к ближайшему объекту
- FROM_Y– Y-координата местоположения входного объекта, который находится ближе всего к ближайшему объекту
- NEAR_X– X-координата местоположения ближайшего объекта, наиболее близкого к входному объекту
- NEAR_Y– Y-координата местоположения ближайшего объекта, наиболее близкого к входному объекту
Если отмечен параметр Угол, в выходную таблицу будут добавлены следующие поля:
- NEAR_ANGLE– Угол линии в местоположении FROM_X и FROM_Y, которая соединяет входные объекты с ближайшим объектом.
Если входной и ближайший объекты пересекаются, в выходную таблицу будут записаны следующие значения:
- NEAR_ANGLE и NEAR_DIST будет задан как 0.0.
- FROM_X и FROM_Y будет совпадать с NEAR_X и NEAR_Y, и будет представлять точку в области пересечения двух объектов.
Значения в поле NEAR_DIST будут храниться в единицах измерения системы координат входных объектов. Если входные объекты заданы в географической системе координат, и значением параметра Метод является Геодезический, единицами в поле NEAR_DIST будут метры.
Выходную таблицу можно присоединить обратно к входным объектам с помощью поля IN_FID или к ближайшим объектам с помощью поля NEAR_FID.
Если задано значение параметра Радиус поиска, но ближайшие объекты не найдены, в выходной таблице не будет записей.
Если значение параметра Радиус поиска не указан, все ближайшие объекты будут рассматриваться как кандидаты.
Если параметр Радиус поиска не указан, параметр Найти только ближайшие объекты не включен, а параметр Максимальное число ближайших совпадений задан по умолчанию (0 или пустой), выходная таблица будет содержать вычисления расстояний между всеми входными объектами и всеми ближайшими объектами. Этот процесс может занять довольно много времени, и может быть создана большая выходная таблица. Например, если в классах входных и ближайших объектов хранится по 1000 точек, выходная таблица может содержать один миллион записей.
Входные и ближайшие объекты могут быть представлены одним и тем же классом объектов или слоем. В этом случае каждый входной объект будет исключаться из кандидатов ближайших к нему объектов, поскольку в противном случае все объекты оказались бы ближайшими к самим себе.
Когда значением параметра Метод является Плоскостные, используйте проекцию для входных объектов, которая позволяет корректно измерять расстояния, например, равнопромежуточную проекцию.
Более подробно о картографических проекциях и системах координат
Для визуализации значений полей FROM_X, FROM_Y, NEAR_X и NEAR_Y выходная таблица может использоваться в качестве входных данных для инструмента Создать слой событий XY или XY в линию.
Вы можете задать единицу измерения поля NEAR_DIST в параметре Единицы расстояния, например, метры, километры или мили.
Параметры
arcpy.analysis.GenerateNearTable(in_features, near_features, out_table, {search_radius}, {location}, {angle}, {closest}, {closest_count}, {method}, {distance_unit}, {match_fields})
Имя | Описание | Тип данных |
in_features | Входные объекты могут быть точками, полилиниями, полигонами или мультиточками. | Feature Layer |
near_features [near_features,...] | Один или несколько слоев или классов пространственных объектов, содержащих потенциальные ближайшие объекты. Ближайшие объекты могут быть точками, полилиниями, полигонами или мультиточками. Если задано несколько слоев или классов объектов, во входную таблицу будет добавлено поле NEAR_FC, в котором для каждого ближайшего объекта будет указан путь к его исходному классу объектов. Один и тот же класс объектов или слой можно использовать как в качестве входных объектов, так и в качестве ближайших объектов. | Feature Layer |
out_table |
Выходная таблица, содержащая результаты анализа. | Table |
search_radius (Дополнительный) | Радиус, который будет использоваться для поиска ближайших объектов. Если значение не указано, в вычисления будут включены все ближайшие объекты. Если расстояние введено, но единица измерения не задана или неизвестна, будут использоваться единицы системы координат входных объектов. Если используется опция GEODESIC для параметра method, используйте линейные единицы измерения, такие как километры или мили. | Linear Unit |
location (Дополнительный) | Определяет, будут ли координаты x и y местоположения входного объекта и ближайшего местоположения ближайшего объекта записаны в поля FROM_X, FROM_Y, NEAR_X и NEAR_Y.
| Boolean |
angle (Дополнительный) | Определяет, будут ли вычислены и записаны в поле NEAR_ANGLE выходной таблицы угловые направления к ближайшим объектам. Угол до ближайшего объекта измеряет направление линии, соединяющей входной объект и ближайший объект по кратчайшему расстоянию. Когда для параметра method используется PLANAR, угол будет находиться в диапазоне от -180° до 180°, где 0° - восток, 90° - север, 180° (или -180°) - запад и -90° - юг. Когда для параметра method используется метод GEODESIC, угол будет находиться в диапазоне от -180° до 180°, где 0° - север, 90° - восток, 180° (или -180°) - юг и -90° - запад.
| Boolean |
closest (Дополнительный) | Указывает, будет ли в выходную таблицу записываться только ближайший объект.
| Boolean |
closest_count (Дополнительный) | Ограничивает число ближайших объектов, указываемых для каждого входного объекта. Этот параметр игнорируется, если параметр closest задан как CLOSEST. | Long |
method (Дополнительный) | Определяет, будет ли инструмент использовать кратчайший путь на сфероиде (геодезический) или на плоской земной поверхности (плоскостной). Рекомендуется использовать метод GEODESIC, если данные хранятся в координатной системе, не подходящей для измерения расстояний (такой как Web Mercator и все географические системы координат), или если набор данных охватывает большую географическую область.
| String |
distance_unit (Дополнительный) | Задает единицы измерения значений для поля NEAR_DIST. Если единицы измерения не заданы, значения в поле NEAR_DIST будут храниться в единицах измерения системы координат входных объектов. Если входные данные хранятся в географической системе координат и используется геодезический метод, единицами в поле NEAR_DIST будут метры.
| String |
match_fields [[input_field, near_field],...] (Дополнительный) | Пары полей из входных и ближайших объектов, которые будут использоваться для сопоставления атрибутов. При расчете близких объектов будут использоваться только те близкие объекты, значения сопоставляемых полей которых совпадают со значениями входных объектов. | Value Table |
Пример кода
Использование функции GenerateNearTable в окне Python.
import arcpy
arcpy.env.workspace = "C:/data/input/gnt.gdb"
arcpy.analysis.GenerateNearTable("campsites", ["parks", "trails"], "better_sites")
Следующий скрипт Python демонстрирует использование функции GenerateNearTable в качестве автономного скрипта.
# Name: GenerateNearTable.py
# Description: Finds 3 nearest in the near feature class from the input feature class.
# import system modules
import arcpy
# set workspace environment
arcpy.env.workspace = "C:/data/input/gnt.gdb"
# set required parameters
in_features = "campsites"
near_features = ["parks", "trails"]
out_table = "near_parks_trails"
# optional parameters
search_radius = '1500 Meters'
location = 'NO_LOCATION'
angle = 'NO_ANGLE'
closest = 'ALL'
closest_count = 3
# find crime locations within the search radius
arcpy.analysis.GenerateNearTable(in_features, near_features, out_table, search_radius,
location, angle, closest, closest_count)
Параметры среды
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да