Краткая информация
Вычисляет смещение между двумя поверхностями и идентифицирует поверхность, лежащую выше, ниже или совпадающую с базовой поверхностью.
Дополнительные сведения о работе инструмента Разность поверхностей
Использование
- Выходные данные представляют перекрывающиеся участки входных поверхностей.
- Выберите в качестве выходного набора данных растр или TIN, если вы хотите оценить разницу значений Z между входной и базовой поверхностью.
- Лучше всего, если горизонтальная и вертикальная системы координат входных поверхностей одинаковы.
Выходной класс объектов будет содержать полигональные объекты, которые выделяют регионы входной поверхности, лежащие выше, ниже или совпадающие с базовой поверхностью. Атрибутивная таблица выходных объектов будет иметь следующие поля:
- Volume – вычисленный объем между входной и базовой поверхностью, в пределах границ полигона. Если входная и базовая поверхности совпадают, значение объема будет равно 0.
- SArea – площадь входной поверхности в пределах границ полигона.
- Code – числовое значение, описывающее пространственное отношение между поверхностью и базовой плоскостью. Значение -1 указывает на то, что поверхность лежит ниже базовой плоскости, 0 – поверхность совпадает с базовой плоскостью, а 1 говорит о том, что поверхность лежит выше базовой плоскости.
Синтаксис
SurfaceDifference_3d (in_surface, in_reference_surface, out_feature_class, {pyramid_level_resolution}, {reference_pyramid_level_resolution}, {out_raster}, {raster_cell_size}, {out_tin_folder}, {out_tin_basename})
Параметр | Объяснение | Тип данных |
in_surface | Поверхность Terrain или TIN, для которой оценивается относительное смещение от базовой поверхности. | Terrain Layer; TIN Layer |
in_reference_surface | Поверхность Terrain или TIN, которая будет использована в качестве базовой для определения относительного смещения входной поверхности. | Terrain Layer; TIN Layer |
out_feature_class | Выходной класс объектов, в котором содержатся непрерывные треугольники и части треугольников с одинаковой классификацией, сгруппированные в полигоны. Разница объемов для каждого из участков перечислена в таблице атрибутов. | Feature Class |
pyramid_level_resolution (Дополнительный) | Уровень пирамидных слоев Terrain, который будет использоваться для входной поверхности. Значением по умолчанию является 0, полное разрешение. Этот параметр используется только для наборов данных Terrain. | Double |
reference_pyramid_level_resolution (Дополнительный) | Уровень пирамидных слоев Terrain, который будет использоваться для базовой поверхности. Значением по умолчанию является 0, полное разрешение. Этот параметр используется только для наборов данных Terrain. | Double |
out_raster (Дополнительный) | Выходная растровая поверхность, значений которой представляют входную поверхность, нормированную по отношению к базовой поверхности. Положительные значения обозначают области, в которых входная поверхность расположена выше базовой поверхности, а отрицательные ― области, в которых входная поверхность расположена ниже базовой. Значения растра получены из поверхности TIN с использованием линейной интерполяции. | Raster Dataset |
raster_cell_size (Дополнительный) | Размер ячейки выходного растра. | Double |
out_tin_folder (Дополнительный) | Расположение папки, в которой хранятся одна или несколько поверхностей TIN, значения которых идентифицируют разность между входной и базовой поверхностью. | Folder |
out_tin_basename (Дополнительный) | Базовое имя для каждой поверхности выходной TIN. Если один набор данных TIN не достаточен для представления данных, создается последовательность наборов данных TIN с тем же базовым именем. | String |
Пример кода
SurfaceDifference, пример 1 (Окно Python)
В следующем примере показано использование этого инструмента в окне Python.
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.SurfaceDifference_3d("sample.gdb/featuredataset/terrain", "sample.gdb/featuredataset/terrain2", "surface_diff.shp")
SurfaceDifference, пример 2 (автономный скрипт)
В следующем примере показано использование этого инструмента в автономном скрипте Python.
'''****************************************************************************
Name: SurfaceDifference Example
Description: This script demonstrates how to use the
SurfaceDifference tool.
****************************************************************************'''
# Import system modules
import arcpy
from arcpy import env
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension("3D")
# Set environment settings
env.workspace = "C:/data"
# Set Local Variables
inSurface = "flood_tin"
inReference = "elev_tin"
# Ensure output name is unique
outPoly = arcpy.CreateUniqueName("difference.shp")
#Execute SurfaceDifference
arcpy.SurfaceDifference_3d(inSurface, inReference, outPoly)
del arcpy, inSurface, inReference, outPoly
Параметры среды
Информация о лицензиях
- ArcGIS Desktop Basic: Требует 3D Analyst
- ArcGIS Desktop Standard: Требует 3D Analyst
- ArcGIS Desktop Advanced: Требует 3D Analyst