Краткая информация
Создает 3D объекты посредством интерполяции z-значений с поверхности.
Более подробно о работе инструмента Интерполировать форму (Interpolate Shape)
Рисунок
Использование
При использовании интерполяции естественной окрестности необходимо указать расстояние выборки, равное или большее половины среднего интервала между точками на поверхности.
При использовании опции Интерполировать только вершины (Interpolate Vertices Only) объекты с вершинами, не попадающими в область данных поверхности, будут пропущены и не войдут в выходные данные.
Синтаксис
InterpolateShape_3d (in_surface, in_feature_class, out_feature_class, {sample_distance}, {z_factor}, {method}, {vertices_only}, {pyramid_level_resolution})
Параметр | Объяснение | Тип данных |
in_surface | Набор данных LAS, растровая, TIN-поверхность или поверхность типа Terrain, которая будет использована для интерполяции z-значений. | LAS Dataset 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, при нем значения высоты не изменяются. | Double |
method (дополнительно) | Метод интерполяции, используемый для определения значений высоты для выходных объектов. Опции будут доступны в зависимости от используемого типа поверхности:
| String |
vertices_only (дополнительно) | Определяет, будет ли интерполяция выполняться по вершинам входного объекта (с игнорированием опции расстояния разбиения).
| Boolean |
pyramid_level_resolution (дополнительно) | z-допуск или разрешение размера окна для уровня пирамидных слоев Terrain, которое будет использоваться этим инструментом. Значением по умолчанию является 0, полное разрешение. | Double |
Пример кода
InterpolateShape, пример 1 (окно Python)
В следующем примере показано использование этого инструмента в окне Python.
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.InterpolateShape_3d("my_tin", "roads.shp", "roads_interp.shp")
InterpolateShape, пример 2 (автономный скрипт)
В следующем примере показано использование этого инструмента в автономном скрипте 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
from arcpy import env
import exceptions, sys, traceback
# Set local variables
inWorkspace = arcpy.GetParameterAsText(0)
surface = arcpy.GetParameterAsText(1)
try:
arcpy.CheckOutExtension("3D")
# Set default workspace
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)
arcpy.CheckInExtension('3D')
except arcpy.ExecuteError:
print arcpy.GetMessages()
except:
# Get the traceback object
tb = sys.exc_info()[2]
tbinfo = traceback.format_tb(tb)[0]
# Concatenate error information into message string
pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\
.format(tbinfo, str(sys.exc_info()[1]))
msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2))
# Return python error messages for script tool or Python Window
arcpy.AddError(pymsg)
arcpy.AddError(msgs)
Параметры среды
- Текущая рабочая область (Current Workspace)
- Временная рабочая область (Scratch Workspace)
- Экстент (Extent)
- Выходная система координат (Output Coordinate System)
- Географические преобразования (Geographic Transformations)
- Разрешение XY (XY Resolution)
- Допуск XY (XY Tolerance)
- Разрешение Z (Z Resolution)
- Допуск Z (Z Tolerance)
- Выходное ключевое слово CONFIG (Output CONFIG Keyword)
- Выходная пространственная сетка 1
- Выходная пространственная сетка 2
- Выходная пространственная сетка 3
- Автоподтверждение (Auto Commit)
Информация о лицензировании
- ArcGIS for Desktop Basic: Требует 3D Analyst
- ArcGIS for Desktop Standard: Требует 3D Analyst
- ArcGIS for Desktop Advanced: Требует 3D Analyst