Сводка
Создает таблицу и дополнительную диаграмму, показывающую профиль линейных объектов над одной или несколькими поверхностями мультипатча, растра, TIN или terrain.
Иллюстрация
Использование
Если вводится параметр Имя выходной диаграммы и инструмент запускается в ArcMap, ArcScene или ArcGlobe, на экран будет выведена полученная диаграмма.
Каждая входная линия заполняется для интерполяции высоты вдоль перекрывающих ее линий профиля. Высота и расстояние вдоль входных линий, созданных этим уплотнением, сохраняются в выходной таблице вместе с дополнительной информацией о линейных объектах и целях профиля.
Ниже перечислены поля в выходной таблице, в которых содержится информация, необходимая для создания диаграммы в любом другом графическом приложении:
- FIRST_DIST – расстояние до первой вершины в сегменте профиля.
- FIRST_Z – высота первой вершины в сегменте профиля.
- SEC_DIST – расстояние до второй вершины в сегменте профиля.
- SEC_Z – высота второй вершины в сегменте профиля.
- LINE_ID – уникальный ID линейного объекта, использующегося для определения профиля.
- SRC_TYPE – тип данных источника профиля, это может быть поверхность или мультипатч.
- SRC_ID – Уникальный ID объекта-мультипатча, для которого создается профиль. Не подходит для входных данных в виде поверхности.
- SRC_NAME – имя и путь к источнику профиля.
Синтаксис
arcpy.ddd.StackProfile(in_line_features, profile_targets, out_table, {out_graph})
Параметр | Объяснение | Тип данных |
in_line_features | Линейные объекты, для которых будет создан профиль над входными поверхностями. | Feature Layer |
profile_targets [profile_targets,...] | Данные, для которых строится профиль, которые могут состоять из любой комбинации объектов-мультипатчей, растровых данных и наборов данных TIN. | Feature Layer; LAS Dataset Layer; Mosaic Layer; Raster Layer; Terrain Layer; TIN Layer |
out_table | Выходная таблица, которая будет содержать высоту, интерполированную для каждой цели профиля, пересекающей входную линию. | Table |
out_graph (Дополнительный) | Имя выходной диаграммы, которую можно просматривать в ArcMap, ArcScene или ArcGlobe. | Graph |
Пример кода
StackProfile, пример 1 (окно Python)
В следующем примере показано использование этого инструмента в окне Python.
import arcpy
from arcpy import env
arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.StackProfile_3d('profile_line.shp', 'dem.tif; buildings.shp',
'profile_values.dbf', 'Surface Profile')
StackProfile, пример 2 (автономный скрипт)
В следующем примере показано использование этого инструмента в автономном скрипте Python.
'''**********************************************************************
Name: Save Profiles to Graph Files
Description: Creates profile graphs of multipatch and surface features,
which are then saved as graph files.
**********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
# Set Local Variables
profileLine = arcpy.GetParameterAsText(0)
profileTargets = arcpy.GetParameterAsText(1) # input las files
profileTable = arcpy.CreateUniqueName('profile_table', 'in_memory')
graphName = "Sample Graph"
outGraph = arcpy.GetParameterAsText(2) # output graph file
try:
arcpy.CheckOutExtension('3D')
# Execute StackProfile
arcpy.ddd.StackProfile(profileLine, profileTargets, profileTable, graphName)
# Execute SaveGraph
arcpy.management.SaveGraph(graphName, outGraph)
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)
Параметры среды
Информация о лицензиях
- Basic: Требуется 3D Analyst
- Standard: Требуется 3D Analyst
- Advanced: Требуется 3D Analyst