I would like to know on which method (e.g. Douglas-Peucker line simplification) the modules qgis:simplifygeometries and qgis:smoothgeometry are built on.

I cannot find further information on these modules.


Simplifying and smoothing operations are related to the QgsGeometry() Class: this means that you can run them when dealing with the geometry of the current feature.

As far as I know, the Simplify geometries algorithm literally simplifies the current geometry by reducing the number of vertices on the basis of a tolerance value (so, there isn't any particular method applied).

Instead, the Smooth geometry algorithm is based on the Chaikin algorithm, as reported in the smooth() module:

Smooths a geometry by rounding off corners using the Chaikin algorithm.

This operation roughly doubles the number of vertices in a geometry.


The Simplify geometries algorithm is based on the simplify() module which, as brilliantly noted by @user30184 in its comment, leads to GEOS. From the following links:

geos::simplify::DouglasPeuckerLineSimplifier Class Reference

geos::simplify::TopologyPreservingSimplifier Class Reference

it seems that there is an explicit reference to the Douglas-Peucker algorithm. More in detail, from the first link above:

Simplifies a linestring (sequence of points) using the standard Douglas-Peucker algorithm.

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.