Доступно с лицензией 3D Analyst.
Доступно с лицензией Spatial Analyst.
Сводка
Создает 3D-объекты посредством интерполяции z-значений с поверхности.
Иллюстрация
Использование
При использовании интерполяции естественной окрестности необходимо указать расстояние выборки, равное или большее половины среднего интервала между точками на поверхности.
При использовании опции Интерполировать только вершины объекты с вершинами, не попадающими в область данных поверхности, будут пропущены и не войдут в выходные данные, если только входная поверхность не является растровой и используется метод интерполяции Ближайшая окрестность.
Синтаксис
arcpy.3d.InterpolateShape(in_surface, in_feature_class, out_feature_class, {sample_distance}, {z_factor}, {method}, {vertices_only}, {pyramid_level_resolution}, {preserve_features})
Parameter | Объяснение | Тип данных |
in_surface | Поверхность, которая используется для интерполяции z-значений. | LAS Dataset Layer; Mosaic Layer; Raster Layer; Terrain Layer; TIN Layer |
in_feature_class | Обрабатываемые входные объекты. | Feature Layer |
out_feature_class | Класс объектов, который будет получен в результате работы инструмента. | Feature Class |
sample_distance (Дополнительный) | Интервал, по которому будут интерполированы Z-значения. По умолчанию это размер ячейки набора растровых данных или естественное сгущение триангулированной поверхности. | Double |
z_factor (Дополнительный) | Коэффициент, на который будут умножаться z-значения. Этот способ обычно используется для конвертации линейных Z-единиц для соответствия линейным единицам XY. Значение по умолчанию равно 1, при нем значения высоты не изменяются. Этот параметр отключен, если пространственная привязка входной поверхности имеет Z-датум с заданными линейными единицами измерения. | Double |
method (Дополнительный) | Метод интерполяции, используемый для определения значений высоты для выходных объектов. Доступные опции зависят от используемого типа поверхности.
| String |
vertices_only (Дополнительный) | Определяет, будет ли интерполяция выполняться по вершинам входного объекта (с игнорированием опции расстояния разбиения).
| Boolean |
pyramid_level_resolution (Дополнительный) | z-допуск или разрешение размера окна для уровня пирамидных слоев Terrain, которое будет использоваться этим инструментом. Значением по умолчанию является 0, полное разрешение. | Double |
preserve_features (Дополнительный) | Определяет, будут ли сохраняться в выходных данных объекты, одна или несколько вершин которых выходят за пределы области данных растра. Параметр доступен только для растровой входной поверхности и при использовании интерполяции Ближайшая окрестность.
| Boolean |
Пример кода
В следующем примере показано использование этого инструмента в окне Python.
arcpy.env.workspace = "C:/data"
arcpy.InterpolateShape_3d("my_tin", "roads.shp", "roads_interp.shp")
В следующем примере показано использование этого инструмента в автономном скрипте Python.
'''*********************************************************************
Name: InterpolateShape Example
Description: This script demonstrates how to use InterpolateShape
on all 2D features in a target workspace.
*********************************************************************'''
# Import system modules
import arcpy
# Set local variables
inWorkspace = arcpy.GetParameterAsText(0)
surface = arcpy.GetParameterAsText(1)
try:
# Set default workspace
arcpy.env.workspace = inWorkspace
# Create list of feature classes in target workspace
fcList = arcpy.ListFeatureClasses()
if fcList:
for fc in fcList:
desc = arcpy.Describe(fc)
# Find 2D features
if not desc.hasZ:
# Set Local Variables
outFC = "{0}_3D.shp".format(desc.basename)
method = "BILINEAR"
# Execute InterpolateShape
arcpy.ddd.InterpolateShape(surface, fc, outFC,
10, 1, method, True)
else:
print("{0} is not a 2D feature.".format(fc))
else:
print("No feature classes were found in {0}.".format(env.workspace))
except arcpy.ExecuteError:
print(arcpy.GetMessages())
except Exception as err:
print(err)
Environments
Информация о лицензиях
- Basic: Требуется 3D Analyst
- Standard: Требуется 3D Analyst
- Advanced: Требуется 3D Analyst