Буфер 3D (3D Analyst)

Краткая информация

Создает трехмерный буфер вокруг точек или линий, образуя сферические или цилиндрические объекты-мультипатчи.

Иллюстрация

Иллюстрация инструмента 3D Буфера

Использование

  • На выходе этого инструмента получаются замкнутые объекты-мультипатчи, которые могут использоваться для вычислений объемов и в других инструментах 3D операторов.

  • Задав значение Упрощения, можно повысить производительность для сложных линейных объектов, таких как изогнутые линии с большим количеством вершин.

  • Этот инструмент может не справиться с созданием замкнутого мультипатча для некоторых линейных объектов, если геометрия линии и буферное расстояние приводят к появлению перекрывающихся областей с часто расположенными вершинами. Вообще, лучше избегать использования буферных расстояний, которые могут привезти к появлению перекрывающихся областей внутри одного объекта.

Параметры

ПодписьОписаниеТип данных
Входные объекты

Линейные или точечные объекты, для которых будет создаваться буфер.

Feature Layer
Выходной класс пространственных объектов

Выходной мультипатч, содержащий 3D буферы.

Feature Class
Расстояние

Буферное расстояние вокруг входных объектов, которое может быть предоставлено как линейное расстояние или получено из числового поля в таблице атрибутов входного объекта. Если буферное расстояние задано из выходного поля, то единица измерения этого расстояния будет определяться из пространственной привязки объекта. Если линейное расстояние задано числовым значением, то используются следующие единицы измерения:

Linear Unit; Field
Тип соединения
(Дополнительный)

Определяет форму буфера между вершинами сегментов линии. Этот параметр подходит только для входных линейных объектов.

  • ПрямоФорма соединений между вершинами будет прямой. Это значение по умолчанию
  • ЗакругленныеФорма соединений между вершинами будет скругленной.
String
Качество буфера
(Дополнительный)

Количество сегментов, используемых для представления итоговых объектов-мультипатчей. Высокое значение дает более сглаженные 3D объекты, но увеличивает время обработки. Можно использовать любое число в диапазоне от 6 до 60. Значение по умолчанию равно 20.

Long
Упрощение (Максимально допустимый сдвиг)
(Дополнительный)

Упрощает входные линии, сохраняя их форму в пределах заданного значения сдвига относительно их исходной геометрии. Упрощение не будет производиться, пока не будет задано значение.

Linear Unit

arcpy.ddd.Buffer3D(in_features, out_feature_class, buffer_distance_or_field, {buffer_joint_type}, {buffer_quality}, {simplification_tolerance})
ИмяОписаниеТип данных
in_features

Линейные или точечные объекты, для которых будет создаваться буфер.

Feature Layer
out_feature_class

Выходной мультипатч, содержащий 3D буферы.

Feature Class
buffer_distance_or_field

Буферное расстояние вокруг входных объектов, которое может быть предоставлено как линейное расстояние или получено из числового поля в таблице атрибутов входного объекта. Если буферное расстояние задано из выходного поля, то единица измерения этого расстояния будет определяться из пространственной привязки объекта. Если линейное расстояние задано числовым значением, то используются следующие единицы измерения:

Linear Unit; Field
buffer_joint_type
(Дополнительный)

Определяет форму буфера между вершинами сегментов линии. Этот параметр подходит только для входных линейных объектов.

  • STRAIGHTФорма соединений между вершинами будет прямой. Это значение по умолчанию
  • ROUNDФорма соединений между вершинами будет скругленной.
String
buffer_quality
(Дополнительный)

Количество сегментов, используемых для представления итоговых объектов-мультипатчей. Высокое значение дает более сглаженные 3D объекты, но увеличивает время обработки. Можно использовать любое число в диапазоне от 6 до 60. Значение по умолчанию равно 20.

Long
simplification_tolerance
(Дополнительный)

Упрощает входные линии, сохраняя их форму в пределах заданного значения сдвига относительно их исходной геометрии. Упрощение не будет производиться, пока не будет задано значение.

Linear Unit

Пример кода

Buffer3D, пример 1 (окно Python)

В следующем примере показано использование этого инструмента в окне Python.

arcpy.env.workspace = 'C:/data'
arcpy.Buffer3D_3d('lineFC.shp', 'buffer3d.shp', '15 Meters', 
                 'Round', 30, '1 Meters')
Buffer3D, пример 2 (автономный скрипт)

В следующем примере показано использование этого инструмента в автономном скрипте 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')

Информация о лицензиях

  • Basic: Обязательно 3D Analyst
  • Standard: Обязательно 3D Analyst
  • Advanced: Обязательно 3D Analyst

Связанные разделы