Добавили в наш редактор графов две новые операции.
Буфер - стандартная операция работы над геометрией, которая как бы "надувает" полигон, увеличивая его ширину на заданную величину. Эта операция может быть полезна для задания областей действия каких-либо объектов или для увеличения их размеров.
Например, в OSM дороги обычно задаются линиями, не имеющими толщины. Но что если нам нужны дороги в виде полигонов, а не линий?
Вот таким образом можно этого достичь. Мы сперва выделяем основные дороги (highway=primary), а затем получаем область на 20 метров вокруг них:
В итоге получится вот такая картина:
Но что это за странные круги?
Дороги в OSM состоят из отдельных кусочков. И в местах соединения этих кусочков образуется граница двух буферов. Одна половина круга - это край одного буфера, другой - другого, а вместе они образуют эти окружности.
Чтобы их убрать, мы можем применить новую операцию - слияние пересекающихся объектов.
Эта операция, как ясно из названия, объединяет пересекающиеся объекты в один.
После выполнения этого пайплайна мы получим вот такой один объект:
При объединении объектов объединяются и теги. Если какой-то тег был у нескольких объединяемых объектов, то у результата будет одно из значений этого тега, но какое именно - сказать нельзя.