QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
Public Member Functions | Protected Attributes | List of all members
QgsTopologyPreservingSimplifier Class Reference

Implementation of GeometrySimplifier using the Douglas-Peucker algorithm. More...

#include <qgsgeometrysimplifier.h>

Inheritance diagram for QgsTopologyPreservingSimplifier:
Inheritance graph
[legend]

Public Member Functions

 QgsTopologyPreservingSimplifier (double tolerance)
 Implementation of GeometrySimplifier using the Douglas-Peucker algorithm. More...
 
virtual ~QgsTopologyPreservingSimplifier ()
 
virtual QgsGeometrysimplify (QgsGeometry *geometry) const override
 Returns a simplified version the specified geometry. More...
 
virtual bool simplifyGeometry (QgsGeometry *geometry) const override
 Simplifies the specified geometry. More...
 
- Public Member Functions inherited from QgsAbstractGeometrySimplifier
virtual ~QgsAbstractGeometrySimplifier ()
 

Protected Attributes

double mTolerance
 Distance tolerance for the simplification. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from QgsAbstractGeometrySimplifier
static bool isGeneralizableByDeviceBoundingBox (const QgsRectangle &envelope, float mapToPixelTol=1.0f)
 Returns whether the device-envelope can be replaced by its BBOX when is applied the specified tolerance. More...
 
static bool isGeneralizableByDeviceBoundingBox (const QVector< QPointF > &points, float mapToPixelTol=1.0f)
 Returns whether the device-geometry can be replaced by its BBOX when is applied the specified tolerance. More...
 

Detailed Description

Implementation of GeometrySimplifier using the Douglas-Peucker algorithm.

Simplifies a geometry, ensuring that the result is a valid geometry having the same dimension and number of components as the input. The simplification uses a maximum distance difference algorithm similar to the one used in the Douglas-Peucker algorithm.

Definition at line 50 of file qgsgeometrysimplifier.h.

Constructor & Destructor Documentation

◆ QgsTopologyPreservingSimplifier()

QgsTopologyPreservingSimplifier::QgsTopologyPreservingSimplifier ( double  tolerance)

Implementation of GeometrySimplifier using the Douglas-Peucker algorithm.

Definition at line 47 of file qgsgeometrysimplifier.cpp.

◆ ~QgsTopologyPreservingSimplifier()

QgsTopologyPreservingSimplifier::~QgsTopologyPreservingSimplifier ( )
virtual

Definition at line 50 of file qgsgeometrysimplifier.cpp.

Member Function Documentation

◆ simplify()

QgsGeometry * QgsTopologyPreservingSimplifier::simplify ( QgsGeometry geometry) const
overridevirtual

Returns a simplified version the specified geometry.

Implements QgsAbstractGeometrySimplifier.

Definition at line 55 of file qgsgeometrysimplifier.cpp.

◆ simplifyGeometry()

bool QgsTopologyPreservingSimplifier::simplifyGeometry ( QgsGeometry geometry) const
overridevirtual

Simplifies the specified geometry.

Implements QgsAbstractGeometrySimplifier.

Definition at line 61 of file qgsgeometrysimplifier.cpp.

Member Data Documentation

◆ mTolerance

double QgsTopologyPreservingSimplifier::mTolerance
protected

Distance tolerance for the simplification.

Definition at line 63 of file qgsgeometrysimplifier.h.


The documentation for this class was generated from the following files: