Построить таблицу соседних объектов (Анализ)

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

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

Более подробно о вычислении близости с помощью инструментов геообработки

Иллюстрация

Иллюстрация инструмента Построить таблицу соседних объектов

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

  • Выходная таблица будет содержать следующие поля:

    • IN_FID— ObjectID входного объекта.
    • NEAR_FID— ObjectID ближайшего объекта.
    • NEAR_DIST— Расстояние от входного до ближайшего объекта. Единицами значений расстояния этого поля являются линейные единицы измерения системы координат входных объектов или метры, если параметр Метод задан как Геодезические, а входные данные находятся в географической системе координат.
    • NEAR_FC— Путь к классу объектов, содержащему ближайший объект. Это поле добавляется в выходную таблицу только в том случае, если указано несколько значений Ближайших объектов.
    • NEAR_RANK— Целочисленное значение, ранжирующее все ближайшие объекты по их близости к данному входному объекту. Ближайший объект получит значение 1, следующий по близости – 2 и т.д.

    Если отмечен параметр Местоположение (параметр location имеет значение LOCATION в Python), в выходную таблицу будут добавлены следующие поля. Единицы измерения значений в полях зависят от того, какой метод используется в параметре Метод. Если используется Планарный, значение дается в линейных единицах измерения системы координат входных объектов. Если используется Геодезический, значение дается в географической системе координат, связанной с системой координат входных объектов.

    • FROM_X– X-координата местоположения входного объекта, который находится ближе всего к ближайшему объекту
    • FROM_Y– Y-координата местоположения входного объекта, который находится ближе всего к ближайшему объекту
    • NEAR_X– X-координата местоположения ближайшего объекта, наиболее близкого к входному объекту
    • NEAR_Y– Y-координата местоположения ближайшего объекта, наиболее близкого к входному объекту

    Следующие поля будут добавлены в выходную таблицу, если отмечен параметр Угол ( параметр angle задан как ANGLE в Python).

    • 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 входных объектов и 1000 ближайших объектов, в выходной таблице будет миллион записей.

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

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

    Более подробно о картографических проекциях и системах координат

  • Для визуализации значений полей FROM_X, FROM_Y, NEAR_X и NEAR_Y выходная таблица может использоваться в качестве входных данных для инструмента Создать слой событий XY или XY в линию.

Параметры

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

Входные объекты, которые могут быть точечного, полилинейного, полигонального или мультиточечного типа.

Feature Layer
Ближайшие объекты

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

Feature Layer
Выходная таблица

Выходная таблица, содержащая результаты анализа.

Table
Радиус поиска
(Дополнительный)

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

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° – запад.

  • Не отмечено – поле NEAR_ANGLE не будет добавлено в выходную таблицу. Это значение по умолчанию
  • Отмечено – поле NEAR_ANGLE будет добавлено в выходную таблицу.
Boolean
Найти только ближайшие объекты
(Дополнительный)

Указывает, будет ли в выходную таблицу записываться только ближайший объект.

  • Отмечено – В выходную таблицу будет записан только самый близкий объект. Это значение по умолчанию
  • Не отмечено – В выходную таблицу будут записаны несколько ближайших объектов (предельное число можно задать параметром Максимальное число ближайших совпадений).
Boolean
Максимальное число ближайших совпадений
(Дополнительный)

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

Long
Метод
(Дополнительный)

Указывает, будет ли использоваться кратчайший путь на сфероиде (геодезический) или на плоскости (планарный) для измерения расстояния. Рекомендуется использовать метод Геодезический, если данные хранятся в системе координат, не подходящей для измерения расстояний (такой как Web Mercator и все географические системы координат), или если набор данных охватывает большую географическую область.

  • ПланарныйМежду объектами будет использоваться плоскостное расстояние. Это значение по умолчанию
  • ГеодезическийБудет использовано геодезическое расстояние между объектами. Этот метод учитывает кривизну сфероида и правильно обрабатывает данные вблизи полюсов и международной линии перемены дат.
String

arcpy.analysis.GenerateNearTable(in_features, near_features, out_table, {search_radius}, {location}, {angle}, {closest}, {closest_count}, {method})
ИмяОписаниеТип данных
in_features

Входные объекты, которые могут быть точечного, полилинейного, полигонального или мультиточечного типа.

Feature Layer
near_features
[near_features,...]

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

Feature Layer
out_table

Выходная таблица, содержащая результаты анализа.

Table
search_radius
(Дополнительный)

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

Linear Unit
location
(Дополнительный)

Определяет, будут ли записаны в поля FROM_X, FROM_Y, NEAR_X и NEAR_Y координаты x и y точки входного объекта и ближайшей точки ближайшего объекта.

  • NO_LOCATIONВыходная таблица не будет содержать информацию о местоположениях. Это значение по умолчанию
  • LOCATIONВыходная таблица будет содержать информацию о местоположениях.
Boolean
angle
(Дополнительный)

Определяет, будут ли вычислены и записаны в поле NEAR_ANGLE выходной таблицы угловые направления к ближайшим объектам. Угол до ближайшего объекта измеряет направление линии, соединяющей входной объект и ближайший объект по кратчайшему расстоянию. Если значением параметра method является PLANAR, угол может принимать значения в диапазоне от -180° до 180°, где 0° – восток, 90° – север, 180° (или -180°) – запад и -90° – юг. Если для параметра method используется GEODESIC, угол может принимать значения в диапазоне от -180° до 180°, где 0° – север, 90° – восток, 180° (или -180°) – юг и -90° – запад.

  • NO_ANGLEПоле NEAR_ANGLE не будет добавлено в выходную таблицу. Это значение по умолчанию
  • ANGLEПоле NEAR_ANGLE будет добавлено в выходную таблицу.
Boolean
closest
(Дополнительный)

Указывает, будет ли в выходную таблицу записываться только ближайший объект.

  • CLOSESTВ выходную таблицу будет записан только самый близкий объект. Это значение по умолчанию
  • ALLВ выходную таблицу будут записаны несколько ближайших объектов (предельное число можно задать параметром closest_count).
Boolean
closest_count
(Дополнительный)

Ограничивает число ближайших объектов, указываемых для каждого входного объекта. Этот параметр игнорируется, если параметр closest задан как CLOSEST.

Long
method
(Дополнительный)

Указывает, будет ли использоваться кратчайший путь на сфероиде (геодезический) или на плоскости (планарный) для измерения расстояния. Рекомендуется использовать метод GEODESIC, если данные хранятся в системе координат, не подходящей для измерения расстояний (такой как Web Mercator и все географические системы координат), или если набор данных охватывает большую географическую область.

  • PLANARМежду объектами будет использоваться плоскостное расстояние. Это значение по умолчанию
  • GEODESICБудет использовано геодезическое расстояние между объектами. Этот метод учитывает кривизну сфероида и правильно обрабатывает данные вблизи полюсов и международной линии перемены дат.
String

Пример кода

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

Использование функции GenerateNearTable в окне Python.

import arcpy

arcpy.env.workspace = "C:/data/input/gnt.gdb"

arcpy.analysis.GenerateNearTable("campsites", ["parks", "trails"], "better_sites")
GenerateNearTable, пример 2 (автономный скрипт)

Следующий скрипт 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: Да

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