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

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

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

Иллюстрация

Иллюстрация инструмента 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')

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