Сводка
Создает трехмерный буфер вокруг точек или линий, образуя сферические или цилиндрические объекты-мультипатчи.
Иллюстрация
Использование
На выходе этого инструмента получаются замкнутые объекты-мультипатчи, которые могут использоваться для вычислений объемов и в других инструментах 3D операторов.
Задав значение Упрощения, можно повысить производительность для сложных линейных объектов, таких как изогнутые линии с большим количеством вершин.
Этот инструмент может не справиться с созданием замкнутого мультипатча для некоторых линейных объектов, если геометрия линии и буферное расстояние приводят к появлению перекрывающихся областей с часто расположенными вершинами. Вообще, лучше избегать использования буферных расстояний, которые могут привезти к появлению перекрывающихся областей внутри одного объекта.
Синтаксис
arcpy.3d.Buffer3D(in_features, out_feature_class, buffer_distance_or_field, {buffer_joint_type}, {buffer_quality}, {simplification_tolerance})
Parameter | Объяснение | Тип данных |
in_features | Линейные или точечные объекты, для которых будет создаваться буфер. | Feature Layer |
out_feature_class | Выходной мультипатч, содержащий 3D буферы. | Feature Class |
buffer_distance_or_field | Буферное расстояние вокруг входных объектов, которое может быть предоставлено как линейное расстояние или получено из числового поля в таблице атрибутов входного объекта. Если буферное расстояние задано из выходного поля, то единица измерения этого расстояния будет определяться из пространственной привязки объекта. Если линейное расстояние задано числовым значением, то используются следующие единицы измерения:
| Linear Unit; Field |
buffer_joint_type (Дополнительный) | Форма буфера между вершинами сегментов линии. Этот параметр подходит только для входных линейных объектов.
| String |
buffer_quality (Дополнительный) | Количество сегментов, используемых для представления итоговых объектов-мультипатчей. Можно использовать любое число в диапазоне от 6 до 60. Значение по умолчанию ― 20. Повышение Качества буфера дает более сглаженные 3D объекты, но увеличивает время обработки. | Long |
simplification_tolerance (Дополнительный) | Упрощает входные линии, сохраняя их форму в пределах заданного значения сдвига относительно их исходной геометрии. Упрощение не будет производиться, пока не будет задано значение. Поддерживаются следующие единицы измерения:
| Linear Unit |
Пример кода
В следующем примере показано использование этого инструмента в окне Python.
arcpy.env.workspace = 'C:/data'
arcpy.Buffer3D_3d('lineFC.shp', 'buffer3d.shp', '15 Meters',
'Round', 30, '1 Meters')
В следующем примере показано использование этого инструмента в автономном скрипте Python.
'''****************************************************************************
Name: Buffer 3D Example
Description: This script demonstrates an application of
the Buffer 3D and Inside 3D tools.
****************************************************************************'''
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = 'C:/data'
# Set Local Variables
inFC = 'lineFC.shp'
bufferOut = 'buffer3d.shp'
# Execute Buffer 3D
arcpy.Buffer3D_3d(inFC, bufferOut, '15 Meters', 'Round', '30', '1 Meters')
arcpy.Inside3D_3d(bufferOut, 'survey_pts.shp', 'inside_analysis.dbf')
Environments
Информация о лицензиях
- Basic: Требуется 3D Analyst
- Standard: Требуется 3D Analyst
- Advanced: Требуется 3D Analyst