Создать буферы (GeoAnalytics Desktop)

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

Создает буферы с указанным расстоянием вокруг входных объектов.

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

  • Параметр Метод определяет, как будут строиться буферы. Два основных метода построения буферов — это Евклидов и геодезический.

    • Евклидов буфер измеряет расстояния на двухмерной координатной плоскости, где расстояние между двумя точками на плоскости измеряется по прямой, то есть как евклидово расстояние. Евклидовы буферы являются более распространенными и хорошо подходят для анализа расстояний вокруг объектов в системе координат проекции, которые сосредоточены на относительно небольшой территории (такой как одна зона UTM). Евклидовы буферы называются планарными.
    • Геодезические буферы строятся с учетом реальной формы поверхности Земли (эллипсоида, а точнее – геоида). Расстояния измеряются между двумя точками на выгнутой поверхности (геоида), что отличается от измерения того же расстояния на плоскости. Создание геодезических буферов предпочтительно в следующих случаях:
      • Входные объекты располагаются далеко друг от друга (они покрывают разные зоны UTM, большие регионы или весь земной шар).
      • Пространственная привязка (проекция карты) входных объектов сильно искажает реальные расстояния, но сохраняет другие свойства, например, площадь.

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

  • Параметр Метод определяет, как будут создаваться буферы.

    • Планарный метод автоматически определяет подходящий метод, в зависимости от системы координат входных объектов.
      • Если входные объекты имеют систему координат проекции, будут построены Евклидовы буферы.
      • Если входные объекты имеют географическую систему координат, будут построены геодезические буферы.
    • По умолчанию – Геодезический. Геодезический метод создает сохраняющий форму геодезический буфер вне зависимости от входной системы координат. Сохраняющий форму геодезический буфер уплотняет входные объекты перед созданием выходных геодезических буферов. Таким образом буферы лучше соответствуют форме входных объектов. Если вы переживаете по поводу формы буферных зон и их соответствия форме входных объектов, рекомендуется включить эту опцию, особенно если входные данные в географической системе координат. Она может занять больше времени, чем построение геодезического буфера с помощью планарной опции, но результатом будет буфер, более точно повторяющий форму входного объекта.

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

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

    Примечание:

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

  • Размер буфера можно ввести, используя следующие три способа:

    • Расстояние – использует постоянное значение (все буферы будут иметь одинаковый размер)
    • Поле – использует значения из поля (различные объекты могут иметь буферы разного размера).
    • Выражение –применяет выражение к каждому объекту (различные объекты могут иметь различные значения на основании выражения)

      Более подробно о применении выражений буферов

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

    • Нет — Буферы будут перекрываться в местах пересечения областей буферов. Используется по умолчанию.
    • Все – выполняется слияние всех объектов. Параметр Составной определяет, будут ли все объекты объединяться в один объект (значение true), или объединяться будут только перекрывающиеся объекты (значение false).
    • Поля – слияние объектов выполняется на основе значений полей. Вы можете выбрать одно или несколько полей, и по одинаковым значениям будет выполняться слияние. Параметр Составной определяет, будут ли все объекты с совпадающим полем объединяться в один объект (значение true), или объединяться будут только перекрывающиеся объекты с совпадающим полем (значение false).

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

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

    Входные точки, используемые для примеров слияния буферов

    Опция слиянияПараметр Составной имеет значение false (по умолчанию)Параметр Составной имеет значение true
    Нет
    Опция буфера без применения слияния

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

    Параметр Составной не может иметь значение true, если выбрано значение опции слияния Нет.

    Все
    Все объекты объединяются, если параметр Составной имеет значение false

    Если все значения объединяются и значение параметра Составной равно false, то создаются три объекта. Объединяются только перекрывающиеся объекты. Это то же самое, что использование для инструмента стандартного анализа опции Слияние.

    Все объекты объединяются, когда параметр Составной - true

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

    Поля
    Все объекты с похожими значениями объединяются, когда параметр Составной -false

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

    Все объекты с похожими значениями объединяются, когда параметр Составной - true

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

  • Можно использовать тип буфера в виде выражение, чтобы создать равенство из числовых полей и математических операторов. Дополнительные сведения см. в разделе Выражения Arcade в инструментах GeoAnalytics Desktop. Подразумевается, что числовые значения в выражении буфера заданы в метрах, если не указано иное.

  • Аналогичный анализ можно выполнить следующим образом:

    • Инструмент геообработки ArcGIS Pro Буфер в наборе инструментов Анализ.
    • Инструмент геообработки ArcGIS Pro Создать буферы в наборе инструментов Анализ объектов.

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

  • Вы можете повысить производительность инструмента Создать буферы, выполнив одно или несколько из следующих действий:

    • Установите параметр среды экстента таким образом, чтобы анализировались только интересующие вас данные.
    • Используйте планарный буфер.
    • Не объединяйте результирующие буферы.
    • Используйте локальные данные, относительно места выполнения анализа.

  • Этот инструмент геообработки работает от Spark. Анализ выполняется на настольном компьютере с использованием нескольких ядер параллельно. См. Информация по инструментами GeoAnalytics Desktop, чтобы узнать больше о выполнении анализа.

  • При запуске инструментов GeoAnalytics Desktop анализ выполняется на настольном компьютере. Для оптимальной производительности данные должны быть доступны на настольном компьютере. Если используется размещенный векторный слой, рекомендуется применить ArcGIS GeoAnalytics Server. Если данные находятся не на жестком диске, для запуска инструмента потребуется больше времени. Чтобы использовать ArcGIS GeoAnalytics Server для выполнения анализа, см. GeoAnalytics Tools.

Параметры

ПодписьОписаниеТип данных
Входной слой

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

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

Новый класс пространственных объектов результирующего буфера.

Feature Class
Метод

Определяет метод, используемый для создания буферов.

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

Определяет, как задается буферное расстояние.

  • РасстояниеОдинаковое линейное расстояние применяется ко всем объектам.
  • ПолеЧисловое или текстовое поле будет выбрано для представления буферного расстояния.
  • ВыражениеБудет построено выражение, содержащее поля, константы и математические операторы, для представления буферного расстояния.
String
Поле буфера
(Дополнительный)

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

Field
Буферное расстояние
(Дополнительный)

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

Linear Unit
Выражение буфера
(Дополнительный)

Выражение, использующее поля и математические операторы, которое будет применено в качестве буфера к каждому объекту. Поля должны быть числовыми, и в выражение могут включаться операторы [+ - * / ] и несколько полей. Вычисленные значения применяются в метрах, если не указано иное. Например, примените буфер, который вычисляется умножением числового поля distance в километрах на 2 и прибавлением 15 метров.

Используйте выражение Arcade, такое как as_kilometers($feature["distance"]) * 2 + as_meters(15).

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

Calculator Expression
Опция слияния
(Дополнительный)

Определяет опцию слияния, которая будет использована для удаления перекрытия буферов.

  • НетНезависимо от наложения для каждого пространственного объекта сохраняется отдельный буфер. Используется по умолчанию.
  • ВсеВсе буферные полигоны объединяются в один объект с удалением всех перекрывающихся областей.
  • СписокБуферные полигоны, имеющие общие атрибутивные значения в перечисленных полях (переносятся из входных объектов), будут объединены в один объект.
String
Поля слияния
(Дополнительный)

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

Field
Поля суммирования
(Дополнительный)

Определяют статистику, которая будет добавлена к числовым и текстовым полям. Если оставить незаполненными, будет вычислено только количество. Эта статистика применяется, только если для Опции слияния указано Список или Все.

  • Количество – количество не пустых значений. Может использоваться с числовыми или текстовыми полями. Количество [null, 0, 2] равно 2.
  • Сумма – сумма числовых значений в поле. Сумма [null, null, 3] равна 3.
  • Среднее – среднее арифметическое числовых значений. Среднее [0, 2, null] равно 1.
  • Мин – минимальное значение числового поля. Минимум [0, 2, null] равен 0.
  • Макс – максимальное значение числового поля. Максимальное значение [0, 2, null] равно 2.
  • Среднеквадратическое отклонение – Среднеквадратическое отклонение числового поля. Среднеквадратическое отклонение [1] равно null. Среднеквадратическое отклонение [null, 1,1,1] равно null.
  • Дисперсия – дисперсия по числовому полю в треке. Дисперсия [1] равна null. Дисперсия [null, 1, 1, 1] равна null.
  • Диапазон – диапазон числового поля. Он вычисляется вычитанием минимального значения из максимального. Диапазон [0, null, 1] равен 1. Диапазон [null, 4] равен 0.
  • Любой – пример строки из текстового поля.

Value Table
Составной
(Дополнительный)

Указывает, будут ли созданы составные объекты.

  • Отмечено – там, где это целесообразно, будут созданы выходные составные объекты.
  • Не отмечено — составные объекты не будут созданы; вместо этого для каждой части будут созданы отдельны объекты. Используется по умолчанию.
Boolean

arcpy.gapro.CreateBuffers(input_layer, out_feature_class, method, {buffer_type}, {buffer_field}, {buffer_distance}, {buffer_expression}, {dissolve_option}, {dissolve_fields}, {summary_fields}, {multipart})
ИмяОписаниеТип данных
input_layer

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

Feature Layer
out_feature_class

Новый класс пространственных объектов результирующего буфера.

Feature Class
method

Определяет метод, используемый для создания буферов.

  • GEODESICБуферы строятся геодезическим методом с сохранением формы, независимо от системы координат входных объектов. Используется по умолчанию.
  • PLANARЕсли входные объекты имеют систему координат проекции, будут построены Евклидовы буферы. Если входные объекты имеют географическую систему координат, будут построены геодезические буферы. Для указания системы координат можно использовать настройку параметров среды Выходная система координат.
String
buffer_type
(Дополнительный)

Определяет, как задается буферное расстояние.

  • DISTANCEОдинаковое линейное расстояние применяется ко всем объектам.
  • FIELDЧисловое или текстовое поле будет выбрано для представления буферного расстояния.
  • EXPRESSIONБудет построено выражение, содержащее поля, константы и математические операторы, для представления буферного расстояния.
String
buffer_field
(Дополнительный)

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

Field
buffer_distance
(Дополнительный)

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

Linear Unit
buffer_expression
(Дополнительный)

Выражение, использующее поля и математические операторы, которое будет применено в качестве буфера к каждому объекту. Поля должны быть числовыми, и в выражение могут включаться операторы [+ - * / ] и несколько полей. Вычисленные значения применяются в метрах, если не указано иное. Например, примените буфер, который вычисляется умножением числового поля distance в километрах на 2 и прибавлением 15 метров.

Используйте выражение Arcade, такое как as_kilometers($feature["distance"]) * 2 + as_meters(15).

Calculator Expression
dissolve_option
(Дополнительный)

Определяет опцию слияния, которая будет использована для удаления перекрытия буферов.

  • NONEНезависимо от наложения для каждого пространственного объекта сохраняется отдельный буфер. Используется по умолчанию.
  • ALLВсе буферные полигоны объединяются в один объект с удалением всех перекрывающихся областей.
  • LISTБуферные полигоны, имеющие общие атрибутивные значения в перечисленных полях (переносятся из входных объектов), будут объединены в один объект.
String
dissolve_fields
[dissolve_fields,...]
(Дополнительный)

Список одного или нескольких полей из входных объектов, по которым будет выполнено слияние итоговых буферов. Любые буферы с общими значениями атрибутов в перечисленных полях будут объединены. Параметр необходим, только если dissolve_option установлен в значение LIST.

Field
summary_fields
[summary_fields,...]
(Дополнительный)

Определяют статистику, которая будет добавлена к числовым и текстовым полям. Если оставить незаполненными, будет вычислено только количество. Эта статистика применяется, только если dissolve_option установлен в значение LIST или ALL.

  • COUNT – количество ненулевых значений. Может использоваться с числовыми или текстовыми полями. Количество [null, 0, 2] равно 2.
  • SUM – сумма числовых значений в поле. Сумма [null, null, 3] равна 3.
  • MEAN – среднее арифметическое числовых значений. Среднее [0,2, null] равно 1.
  • MIN – минимальное значение числового поля. Минимум [0, 2, null] равен 0.
  • MAX – максимальное значение числового поля. Максимальное значение [0, 2, null] равно 2.
  • STDDEV – среднеквадратическое отклонение числового поля. Среднеквадратическое отклонение [1] равно null. Среднеквадратическое отклонение [null, 1,1,1] равно null.
  • VAR – дисперсия по числовому полю в треке. Дисперсия [1] равна null. Дисперсия [null, 1,1,1] равна null.
  • RANGE – диапазон числового поля. Он вычисляется вычитанием минимального значения из максимального. Диапазон [0, null, 1] равен 1. Диапазон [null, 4] равен 0.
  • ANY – пример строки из текстового поля.

Value Table
multipart
(Дополнительный)

Указывает, будут ли созданы составные объекты.

  • MULTI_PARTТам, где это целесообразно, будут созданы выходные составные объекты.
  • SINGLE_PARTСоставные объекты не будут созданы; вместо этого для каждой части будут созданы отдельны объекты. Используется по умолчанию.
Boolean

Пример кода

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

Пример скрипта в окне Python для использования функции CreateBuffers.

#-------------------------------------------------------------------------------
# Name: CreateBuffers.py
# Description: Buffer damaged building by 300 meters

# Import system modules
import arcpy

arcpy.env.workspace = "C:/data/DamageSurvey.gdb"

# Set local variables
inFeatures = "DamageAssessment"
out = "DangerousAreas"

# Run Create Buffers
arcpy.gapro.CreateBuffers(inFeatures, out, "GEODESIC", "DISTANCE", 
                          None, "300 Meters", None, "ALL", None, None, 
                          "SINGLE_PART")

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

  • Basic: Нет
  • Standard: Нет
  • Advanced: Да

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