Анализ доступности объектов

Создание буферных зон

Важно

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

Буферная зона - это область на карте, каждая точка внутри которой находится в пределах заданного расстояния от исходного объекта.

Источник: Shen, J.; Chen, L.; Wu, Y.; Jing, N. Approach to Accelerating Dissolved Vector Buffer Generation in Distributed In-Memory Cluster Architecture. ISPRS Int. J. Geo-Inf. 2018, 7, 26. https://doi.org/10.3390/ijgi7010026
Предупреждение

Буферные зоны - это один из тех инструментов, которые зависимы от системы координат исходного слоя. То есть размер буфера может быть задан только в единицах измерения слоя.

Для создания буферных зон есть одноименный инструмент Буферизация в панели инструментов анализа.

Дополнительно

Как видите, у нас есть несколько очень похожих инструментов, мы с вами будем пользоваться самым простым из них.

Что же делают остальные?

  • буфер переменной ширины - размер буферной зоны будет зависеть от величины какого-то показателя;

  • множественный буфер - создание сразу нескольких буферных зон с определенным шагом по расстоянию;

  • конические буферы (на самом деле клиновидные) - буфер для линейного объекта с разными значениями размера в начале и конце линии;

  • односторонний буфер - создание буфера только с одной стороны линейного объекта;

  • создать клиновидные буферы - создание буферов в форме сектора круга от точечных объектов.

Источник: https://help.axioma-gis.ru/index.html?editing_buffer.html

Источник: https://help.axioma-gis.ru/index.html?editing_buffer.html

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

На заметку

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

Например, для детских садов зона доступности - 300 метров, для поликлиник - 1000 метров.

Для объектов коммерческой инфраструктуры нормативов нет, но вы можете взять свое произвольное значение.

Так как в нашем случае буферные зоны строятся для точечных объектов, то основным параметром будет расстояние - размер зоны.

Также роль будет играть параметр Выполнить слияние результирующих полигонов: при его выборе все полученные полигоны будут объединены в один объект.

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

В итоге вы увидите новый слой в панели слоев и его отображение на карте.

Поиск объектов по расположению

Определение зданий, попавших в границы буферных зон

Далее мы можем осуществить поиск домов, которые попадают в заданные области обслуживания.

Для поиска объектов есть группа инструментов Вектор — Выборка.

На заметку

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

Краткое описания инструментов:

  • выбрать/извлечь по атрибуту - поиск объектов по значению одного из атрибутов;

  • выбрать/извлечь по выражению - поиск объектов по значениям нескольких атрибутов одновременно;

  • выбрать/извлечь по пространственному отношению - поиск объектов по их расположению относительно объектов другого слоя;

  • выделить/извлечь в пределах расстояния - поиск объектов в пределах заданного расстояния от других объектов;

  • случайное выделение/случайное извлечение - случайная выборка объектов из слоя (заданного числа объектов или заданного процента объектов);

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

Нам нужно определить, какие здания попадают в буферные зоны, поэтому нужно воспользоваться выбрать\извлечь по пространственному отношению.

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

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

Дополнительно

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

Дополнительно

Такеж вы можете попробовать найти здания в пределах заданного расстояния от школ при помощи инструментов Выделить в пределах расстояния/Извлечение в пределах расстояния.

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

Расчет количества доступных школ

Рассчитаем число доступных школ для каждого из наших зданий с использованием выражения агрегирования.

 aggregate( 'school_bufer_f66eb7f4_5fbc_470a_acf4_0fd3649f38e1', aggregate:='count',expression:="osm_id", filter:=within(geometry(@parent),@geometry))

Как видите, выражение очень похоже на то, что мы уже использовали, меняются только некоторые аргументы.

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

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