8

I am looking for a tool in QGIS 2.40 that performs the function ArcGIS refers to as Aggregate Polygons. Basically it takes a group of polygons within a specified distance and creates a concave hull around them.

Does anyone know if this functionality (or anything similar) exists within QGIS currently?

9

If your goal is to create a polygon representing the outline of a set of features, you're probably looking to create the concave-hull of this features set.

While the creation of a convex-hull is a pretty straightforward operation, because there is only one possible convex-hull for a given set, this is not true in the case of the concave-hull.

Because concave-hull polygons are allowed to have angles greater than 180º, their creation can have more than one possible solution.

The QGIS Concave Hull plugin uses a nearest-neighborhood approach to allow the user define the "concaveness" of the output polygon.

You can see more details about the plug-in, as well as different possible output polygons for the same feature set in the plugin GitHub page.

It was written based on the algorithm described by A. Moreira and M. Y. Santos (2007): Concave Hull: A k-nearest neighbors approach for the computation of the region occupied by a set of points

Other open-source GIS implementations of convex-hull computations are available on PostGIS (ST_ConcaveHull) and GRASS GIS (v.concave.hull).

| improve this answer | |
0

Building on and updating @skualos answer after responding to a QGIS-user mailing list question:

There are two Concave Hull tools available in the QGIS Processing toolbox (as of November 2019). Of these, the Concave hull (k-nearest neighbor) appears to be more suitable as it accepts polygons as an input geometry (though decomposes them to their vertices), and also allows for a group field to be specified.

To partially replicate the ArcGIS Aggregate Polygon function, the following steps could be taken:

  1. Buffer the polygons by the maximum separation distance required, dissolving the results.
  2. Spatially join the original polygons to the buffer output so that each original polygon receives the unique id of the buffer polygon that it falls within.
  3. Create concave hulls using the buffer id field as the group field.

This method could be extended to incorporate some of the additional parameters of the ArcGIS tool, however the Orthogonality option would almost certainly need a different approach.

| improve this answer | |
0

I had the same need and wrote a processing plugin that do at least something similar like the mentioned function/tool.

You can download the zip-file from github and set it up in the QGIS plugin manager.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.