QGIS Buffer – How to Create Multiple Inner Buffers in QGIS

buffermultiplepolygon-creationqgis

How can I create a multiple inner (negative) buffer of a polygon layer that starts from an initial distance and repeats n times at a fixed distance?

The result should be independent polygons.
Ex: I would like to generate 10 independent interior polygons relative to a layer of polygon features, the first of them 30m apart, and then 9 more interior polygons 1m apart.

Best Answer

  1. Use Menu Processing > Toolbox > Geometry by expression with this expression:
   collect_geometries (
       array_foreach (
           generate_series (30,39,1),
           buffer ($geometry, -@element)
       )
   )
  1. Run Menu Vector > Geometry tools > Multipart to singleparts:

Remark: Line 3 in the above expression contains the distances for the bufers: 30 is the initial distance for the first buffer; 39 is the distance of the last buffer (from 30 to 39, you get 10 elements), 1 is the distance between each buffer (here, for the value of 1, this is optional).

The solution, here demonstrated with Geometry Generator: enter image description here