QGIS – Aligning Existing Polygon Borders in QGIS

alignmentpolygonqgis

I'm looking for a method to align the borders of two overlapping and already existing polygon layers. I'm aware of the node tool and its tolerance snapping option, but the area I'm working with is too large to do it manually.

I have two polygon layers. Layer 1 contains about 11,000 municipality features. Layer 2 contains 14 climatic zones (colored in picture 1).

Two layers with precise municipality features and unprecise climate zone features

As seen in picture 2 the outer border of the two layers do not fit. First of all I would like to manipulate the outer border of the climate zone layer (colored) so that it aligns with the outer border of the municipality features. Further I do not want the climate zone features to split the municipality features. One municipality shall be covered by only one climate zone.

Detail: Outer borders are not aligned. Some municipalites are intersected by the climate zone layer

At the very end I plan to intersect the two layers so that I have a list: Municipality ID to climate zone ID.

So far I only found a tool for ArcGIS, called Align to Shape.

Is something like this available for QGIS too?

Best Answer

I would recommend these steps:

  • Create polygon centroids for your municipality features.
  • Next use "join attributes by location" to give these new centroids all a new attribute that is the climate zone.
  • Then join this centroid layer to your original municipality polygons by a unique ID only including the new climate zone though.
  • (Optional): Create a new dissolved version of the municipalities polygon layer which dissolves using the new climate area variable as the 'dissolve by' variable. This may through up lots of slither polygons though, but the areas are large enough to clean relatively easily with cleaning tools.