Доступно с лицензией Advanced.
Сводка
Вычисляет расстояние между каждой точкой в покрытии до всех точек в том же самом или другом покрытии, находящихся в пределах заданного радиуса поиска.
Иллюстрация
Использование
Определение поля расстояния в выходном файле INFO будет соответствовать наивысшей точности двух входов точечного покрытия.
Радиус поиска - это максимальное расстояние от текущей точки до пространственного объекта, выраженное в единицах покрытия, при котором этот объект учитывается. Если {search_radius} не указан, по умолчанию будет использоваться диагональная ширина BND начального покрытия.
Если для конкретной точки не найден объект в пределах радиуса поиска, расстояние обнуляется. Если соответствующие точки не найдены, инструмент выдает предупреждение, и выходная таблица info не создается.
Инструмент Расстояние до точки не будет выполняться, если какое-либо из покрытий содержит больше 130000 точек.
Выходная таблица INFO может стать очень большой, если оба покрытия содержат много точек. Используйте меньшее значение радиуса поиска, чтобы ограничить число сочетаний.
Если инструмент Расстояние до точки (Point Distance) используется для вычисления расстояния между точками в одном покрытии, номер cover# будет содержать A и B, присоединенные к имени поля.
Файлы проекций сравниваются на предмет подобия с использованием степени сравнения, заданной в параметре среды Сравнить проекции (Compare Projections). Более подробно см. Сравнить проекции (Сompare Projections).
Результаты записываются в выходную таблицу, содержащую поля для внутренних номеров и расстояния. Вход с наивысшим разрешением для расстояния - это тот, который используется для выходного поля расстояния INFO.
COLUMN ITEM NAME WIDTH OUTPUT TYPE N.DEC 1 <From coverage># 4 6 B - 5 <To coverage># 4 6 B - 9 DISTANCE 4 12 F 3 (single precision) Or 9 DISTANCE 8 18 F 5 (double precision)
Синтаксис
arcpy.arc.PointDistance(from_cover, to_cover, out_info_table, {search_radius})
Параметр | Объяснение | Тип данных |
from_cover | Точечное покрытие, для точек которого нужно вычислить расстояния до точек другого покрытия. | Coverage |
to_cover | Точечное покрытие, от точек которого нужно измерить расстояния. Расстояния между всеми точками в одном покрытии можно вычислить, если задать одинаковое имя покрытия для аргументов <from_cover> и <to_cover>. | Coverage |
out_info_table | Таблица данных INFO, созданная инструментом Расстояние от точки (Point Distance), в которой содержатся результаты измерения расстояний. Число записей, созданных в <output Info table:> зависит от радиуса поиска, но теоретически может быть равно числу точек в покрытии <from cover>, помноженному на число точек в покрытии <to cover:>. | INFO Table |
search_radius (Дополнительный) | Максимальное расстояние в единицах покрытия, которое должно быть от текущей точки до пространственного объекта, чтобы этот объект считался ближайшим. Значение по умолчанию — это диагональная ширина BND начального покрытия. | Double |
Пример кода
Пример использования инструмента PointDistance (автономный скрипт)
В следующем автономном скрипте показано, как вычислить расстояния между точками в двух покрытиях.
# Name: PointDistance_Example.py
# Description: Calculates the distances between the points in two coverages
# Requirements: ArcInfo Workstation
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
fromCover = "wells"
toCover = "trees"
outInfoTable = "C:/output/distance"
# Execute PointDistance
arcpy.PointDistance_arc(fromCover, toCover, outInfoTable, "")
Параметры среды
Информация о лицензиях
- Basic: Нет
- Standard: Нет
- Advanced: Требуется установленная ArcInfo Workstation