Графический буфер (Анализ)

Сводка

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

Для операций построения буферов доступны и другие инструменты. Изучить подробности можно в документации к инструментам Попарный буфер и Графический буфер.

Иллюстрация

Иллюстрация инструмента Графический буфер

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

    Примечание:

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

  • Входными объектами могут быть точки, линии или полигоны. Доступные опции для буферных окончаний (завершений) и углов (соединений) зависят от геометрии входных объектов.

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

    Если поле BUFF_DIST уже существует во входных объектах, его значения будут перезаписаны.

  • Выходные буферные объекты всегда рассчитываются по Евклидову расстоянию. Геодезические буферные объекты не поддерживаются. Для получения информации относительно разницы между евклидовым и геодезическим буферами см. раздел Как работает инструмент Буфер (Анализ).

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

  • При создании буферных полигонов вокруг полигональных объектов, могут использоваться отрицательные буферные расстояния для создания буферов внутри полигональных объектов. При использовании отрицательного буферного расстояния границы полигона уменьшатся на заданное расстояние.

    Внимание:

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

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

    Использование поля буфера для ввода буферного расстояния
  • Инструмент учитывает параметр среды Коэффициент параллельной обработки. Если параметр среды не задан (по умолчанию), или задано значение, равное 100, будет включена полная параллельная обработка, и инструмент будет пытаться задействовать все логические ядра процессора компьютера. Установка параметры среды равным 0 отключит параллельную обработку. Присвоение коэффициенту значения от 1 до 99 приведет к тому, что инструмент определит процент логических ядер для использования по формуле (Коэффициент параллельной обработки / 100 * Логические ядра), округлив результат до ближайшего целого значения. Если результат равен 0 или 1, параллельная обработка не будет включена.

Синтаксис

arcpy.analysis.GraphicBuffer(in_features, out_feature_class, buffer_distance_or_field, {line_caps}, {line_joins}, {miter_limit}, {max_deviation})
ParameterОбъяснениеТип данных
in_features

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

Feature Layer
out_feature_class

Класс пространственных объектов, содержащий выходные буферы.

Feature Class
buffer_distance_or_field

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

Если линейные единицы не заданы или введены как Неизвестные, используются линейные единицы пространственной привязки входных объектов.

При определении расстояния в скриптах, если нужная линейная единица обозначается двумя словами, например Decimal Degrees, объедините два слова в одно (например, 20 DecimalDegrees).

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

Определяет тип окончания (завершения) входных объектов, для которых будут построены буферные полигоны. Этот параметр используется только для точечных и полигональных объектов.

  • SQUAREУ выходных буферов будут квадратные окончания входных сегментов. Это значение по умолчанию.
  • BUTTУ выходных буферов будут окончания, перпендикулярные окончаниям входных сегментов.
  • ROUNDУ выходных буферов будут круглые окончания входных сегментов.
String
line_joins
(Дополнительный)

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

  • MITERПриводит к созданию выходного буфера квадратной или острой формы по углам. Например, буфер для входного полигона квадратной формы также будет квадратный. Это значение по умолчанию.
  • BEVELВнутренние углы выходного буфера будут квадратными, а наружные будут скошены перпендикулярно к самой удалённой точке угла.
  • ROUNDВнутренние углы выходного буфера будут квадратными, а наружные будут закругленными.
String
miter_limit
(Дополнительный)

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

Double
max_deviation
(Дополнительный)

Максимальное расстояние, на которое итоговая граница полигона буфера может отклоняться от истинной идеальной границы буфера. Истинная граница буфера – это кривая, а выходная граница полигона является уплотненной полилинией. Этот параметр используется для управления тем, насколько выходная граница полигона будет соответствовать истинной границе буфера.

Если этот параметр не задан или задан равным нулю, инструмент будет использовать максимальное отклонение. Рекомендуется использовать значение по умолчанию. Может произойти существенная потеря производительности работы инструмента или последующего анализа, если вы будете использовать слишком маленькое максимальное отклонение сдвига.

Для получения более подробной информации см. информацию о параметре max_deviation, которая находится в разделе об инструменте Уплотнить.

Linear Unit

Пример кода

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

В следующем скрипте окна Python показано, как используется инструмент GraphicBuffer.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.GraphicBuffer_analysis("roads", "C:/output/majorrdsBuffered", "100 Feet", 
                             "SQUARE", "MITER")

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

  • Basic: Да
  • Standard: Да
  • Advanced: Да

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