Сводка
Создает таблицу и дополнительную диаграмму, показывающую профиль линейных объектов над одной или несколькими поверхностями мультипатча, растра, TIN или terrain.
Использование
Каждая входная линия заполняется для интерполяции высоты вдоль перекрывающих ее линий профиля. Высота и расстояние вдоль входных линий, созданных этим уплотнением, сохраняются в выходной таблице вместе с дополнительной информацией о линейных объектах и целях профиля.
Ниже перечислены поля в выходной таблице, в которых содержится информация, необходимая для создания диаграммы в любом другом графическом приложении:
- FIRST_DIST – расстояние до первой вершины в сегменте профиля.
- FIRST_Z – высота первой вершины в сегменте профиля.
- SEC_DIST – расстояние до второй вершины в сегменте профиля.
- SEC_Z – высота второй вершины в сегменте профиля.
- LINE_ID – уникальный ID линейного объекта, использующегося для определения профиля.
- SRC_TYPE – тип данных источника профиля, это может быть поверхность или мультипатч.
- SRC_ID – Уникальный ID объекта-мультипатча, для которого создается профиль. Не подходит для входных данных в виде поверхности.
- SRC_NAME – имя и путь к источнику профиля.
Синтаксис
arcpy.3d.StackProfile(in_line_features, profile_targets, out_table, {out_graph})
Parameter | Объяснение | Тип данных |
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 (Дополнительный) | Выходная диаграмма не поддерживается в Pro. | Graph |
Пример кода
В следующем примере показано использование этого инструмента в окне Python.
arcpy.env.workspace = 'C:/data'
arcpy.StackProfile_3d('profile_line.shp', profile_targets=['dem.tif', 'buildings.shp'],
out_table='profile_values.dbf')
В следующем примере показано использование этого инструмента в автономном скрипте 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
# 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
# Execute StackProfile
arcpy.ddd.StackProfile(profileLine, profileTargets, profileTable, graphName)
# Execute SaveGraph
arcpy.management.SaveGraph(graphName, outGraph)
Environments
Информация о лицензиях
- Basic: Требуется 3D Analyst
- Standard: Требуется 3D Analyst
- Advanced: Требуется 3D Analyst