Ближайшая окрестность 3D (Geostatistical Analyst)

Доступно с лицензией Geostatistical Analyst.

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

Создает исходный файл (netCDF) для слоя вокселов из категорийных 3D-точек, путем назначения каждому вокселу категории в ближайшей окрестности 3D.

Более подробно о слоев вокселов

Иллюстрация

Иллюстрация инструмента Ближайшая окрестность 3D
В слое вокселов отображаются классы скал и почв для ближайшей 3D-точки.

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

  • Параметр Выходной файл netCDF не будет автоматически добавлять слои на карту или сцену. Чтобы отобразить выходные данные в виде слоя вокселов, они должны быть добавлены в локальную сцену с той же горизонтальной и вертикальной системой координат, что и файл netCDF. Он также может быть добавлен на карту или сцену в качестве векторного или растрового слоя с помощью инструмента Создать векторный слой NetCDF или Создать растровый слой NetCDF соответственно.

  • Входные объекты должны быть представлены 3D-точками со значениями высот, которые хранятся в атрибуте геометрии Shape.Z. Вы можете конвертировать 2D-точечные объекты с полем высот в 3D-точечные объекты, используя инструмент Объекты в 3D по атрибуту.

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

  • Если в параметре Поля категорий указано несколько полей, выходной файл netCDF будет содержать отдельную переменную для каждого поля. Имя каждой переменной будет соответствовать имени поля категорий. Вы можете выбрать переменную для отображения в сцене при добавлении слоя вокселов к сцене.

    Например, вы можете указать поле классов почв (сланец, песок, глина и так далее), и второе поле с данным цвета почв, и каждый воксел в выходном файле netCDF будет содержать значения класса почв и цвета почв в ближайшей окрестности.

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

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

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

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

  • Для каждого поля категории каждое уникальное значение будет сохранено в выходной файл netCDF в виде целого числа. После сортировки (по возрастанию) уникальных значений, первая категория получает уникальное значение 0; следующая категория - уникальное значение 1; и так далее. При добавлении к сцене дискретного слоя вокселов, для символов по уникальным значениям применяются исходные значения поля категорий как метки к целым числам.

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

  • При построении 3D-сетки точек, которые будут представлять вокселы, первая точка создается в местоположении с минимальной координатой x-, минимальной y- и минимальной z- выходного экстента (по умолчанию экстент входных объектов). Оставшиеся точки создаются с использованием итерации расстояний параметров Интервал X, Интервал Y и Интервал высоты в размерах выходного экстента. Если какое-либо из интервалов расстояний не делит равномерно соответствующий размер выходного экстента, то за пределами выходного экстента будет создана одна строка или столбец точек. Например, если выходной экстент для x указан как значения от 0 к 10, а параметр Интервал X задан 3, то в выходных данных будет 4 строки в экстенте x: 0, 3, 6, 9 и 12. Аналогично, будет создана дополнительная строка или столбец точек, если расстояния интервалов между ними не будут равномерно разделять y- или z-экстенты.

  • Если задана входная полигональная область изучения, в качестве выходного экстента по умолчанию будет использоваться экстент области изучения, а значения параметров Интервал X и Интервал Y будут пересчитаны на основе этого экстента. Это позволит быть уверенными в том, что выходные данные по умолчанию заполнят всю изучаемую область.

  • Если входные объекты содержат совпадающие точки (точки с одними и теми же значениями координат x-, y- и z-), но имеют разные значения в поле категорий, для местоположения будет использована первая буквенно-цифровая категория.

  • Если для входных объектов применена выборка, значения Интервала X, Интервала Y и Интервала высот будут пересчитаны при запуске инструмента на основании экстента выбранных объектов. Пересчитанные значения будут отображены в формате сообщения с предупреждением по завершении работы инструмента. Если вы вручную указали значение для интервала (или задали выходной экстент), значения не пересичтываются.

Параметры

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

Входные точки, представляющие местоположения с известными категориями в 3D. Точки должны быть в системе координат проекции, и необходимо не менее трех точек.

Feature Layer
Поля категорий

Поля входных объектов, содержащее значения категорий для каждой точки. Для каждого поля категория представлена уникальными значениями. Поле должно быть типа Короткое целое (Short), Длинное целое (Long) или Текст.

Например, вы можете указать поле классов почв (сланец, песок, глина и так далее), и второе поле с данным цвета почв (желтый, коричневый белый и т.д.). Каждый воксел в выходном файле netCDF будет содержать значения ближайшего класса почв и ближайшего цвета как отдельные переменные.

Field
Выходной файл netCDF

Выходной файл netCDF, содержащий категории в 3D-сетке. Каждой точке в 3D-сетке назначается категория ближайшей входной точки. Этот файл будет использоваться как источник данных для слоя вокселов.

File
Интервал X
(Дополнительный)

Расстояние между каждой точкой сетки в x-измерении. Значение по умолчанию создает 40 точек вдоль выходного x-экстента.

Linear Unit
Интервал Y
(Дополнительный)

Расстояние между каждой точкой сетки в y-измерении. Значение по умолчанию создает 40 точек вдоль выходного y-экстента.

Linear Unit
Интервал высоты
(Дополнительный)

Расстояние между каждой точкой сетки в z-измерении. Значение по умолчанию создает 40 точек вдоль выходного z-экстента.

Linear Unit
Коэффициент инфляции высот
(Дополнительный)

Постоянное значение, на которое умножаются значения высоты (координаты z) входных точек перед нахождением ближайшего соседа. Для значений больше 1 для определения ближайшего соседа поиск будет выполняться дальше в горизонтальном направлении, чем в вертикальном. Например, значение 10 означает, что каждый воксел будет искать ближайшего соседа на расстоянии в 10 раз дальше по горизонтали, чем по вертикали. Значение по умолчанию равно 1, что означает отсутствие корректировки высот. Значение должно быть между 1 и 1000.

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

Double
Входные области изучаемой области
(Дополнительный)

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

Feature Layer
Минимальная высота вырезания растра
(Дополнительный)

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

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

Raster Layer
Максимальная высота вырезания растра
(Дополнительный)

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

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

Raster Layer

arcpy.ga.NearestNeighbor3D(in_features, category_field, out_netcdf_file, {x_spacing}, {y_spacing}, {elevation_spacing}, {elev_inflation_factor}, {in_study_area}, {min_elev_raster}, {max_elev_raster})
ИмяОписаниеТип данных
in_features

Входные точки, представляющие местоположения с известными категориями в 3D. Точки должны быть в системе координат проекции, и необходимо не менее трех точек.

Feature Layer
category_field
[category_field,...]

Поля входных объектов, содержащее значения категорий для каждой точки. Для каждого поля категория представлена уникальными значениями. Поле должно быть типа Короткое целое (Short), Длинное целое (Long) или Текст.

Например, вы можете указать поле классов почв (сланец, песок, глина и так далее), и второе поле с данным цвета почв (желтый, коричневый белый и т.д.). Каждый воксел в выходном файле netCDF будет содержать значения ближайшего класса почв и ближайшего цвета как отдельные переменные.

Field
out_netcdf_file

Выходной файл netCDF, содержащий категории в 3D-сетке. Каждой точке в 3D-сетке назначается категория ближайшей входной точки. Этот файл будет использоваться как источник данных для слоя вокселов.

File
x_spacing
(Дополнительный)

Расстояние между каждой точкой сетки в x-измерении. Значение по умолчанию создает 40 точек вдоль выходного x-экстента.

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

Расстояние между каждой точкой сетки в y-измерении. Значение по умолчанию создает 40 точек вдоль выходного y-экстента.

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

Расстояние между каждой точкой сетки в z-измерении. Значение по умолчанию создает 40 точек вдоль выходного z-экстента.

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

Постоянное значение, на которое умножаются значения высоты (координаты z) входных точек перед нахождением ближайшего соседа. Для значений больше 1 для определения ближайшего соседа поиск будет выполняться дальше в горизонтальном направлении, чем в вертикальном. Например, значение 10 означает, что каждый воксел будет искать ближайшего соседа на расстоянии в 10 раз дальше по горизонтали, чем по вертикали. Значение по умолчанию равно 1, что означает отсутствие корректировки высот. Значение должно быть между 1 и 1000.

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

Double
in_study_area
(Дополнительный)

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

Feature Layer
min_elev_raster
(Дополнительный)

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

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

Raster Layer
max_elev_raster
(Дополнительный)

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

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

Raster Layer

Пример кода

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

Скрипт Python, демонстрирующий использование функции NearestNeighbor3D.

# Create a voxel layer source file of 3D soil class points within a field
# and between a bedrock layer and the ground.
arcpy.ga.NearestNeighbor3D("SoilPoints", "SoilClass","outputNCDF.nc",
                           "50 Meters", "50 Meters", "5 Meters", 1,
                           "MyStudyArea", "Bedrock.tif", "WorldElevation3D")
NearestNeighbor3D, пример 2 (автономный скрипт)

Скрипт Python, демонстрирующий использование функции NearestNeighbor3D.

# Name: NearestNeighbor3D_Example_02.py
# Description: Creates a voxel layer source file from 3D categorical points.
# Requirements: Geostatistical Analyst Extension
# Author: Esri


# Create a voxel layer source file of 3D soil class points within a field
# and between a bedrock layer and the ground.



# Import system modules
import arcpy

# Allow overwriting output
arcpy.env.overwriteOutput = True

# Define 3D input points with categories
in3DPoints = "C:/gapydata/inputs.gdb/my3DSoilPoints"
categoryField = "SoilClass"
outNetCDF = "C:/gapydata/outputs/SoilClassVoxel.nc"

# Define voxel dimensions and elevation inflation
xSpacing = "50 Meters"
ySpacing = "50 Meters"
elevSpacing = "5 Meters"
elevInflation = 1

# Define study area, bedrock elevation layer, and ground elevation layer
studyArea = "C:/gapydata/inputs.gdb/StudyAreaPolygon"
minElevRaster = "C:/gapydata/inputs.gdb/BedrockDepth"
maxElevRaster = "C:/gapydata/inputs.gdb/WorldElevationDEM"


# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")

# Execute Nearest Neighbor 3D
arcpy.ga.NearestNeighbor3D(in3DPoints, categoryField,outNetCDF,
                           xSpacing, ySpacing, elevSpacing,
                           elevInflation, studyArea, minElevRaster,
                           maxElevRaster)

Информация о лицензиях

  • Basic: Обязательно Geostatistical Analyst
  • Standard: Обязательно Geostatistical Analyst
  • Advanced: Обязательно Geostatistical Analyst

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