QGIS API Documentation 4.1.0-Master (60fea48833c)
Loading...
Searching...
No Matches
qgsgeometryoptions.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsgeometryoptions.h
3 -------------------
4 begin : Aug 23, 2018
5 copyright : (C) 2018 by Matthias Kuhn
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSGEOMETRYOPTIONS_H
19#define QGSGEOMETRYOPTIONS_H
20
21#include "qgis_core.h"
22#include "qgsgeometry.h"
23
24#include <QObject>
25
27
36class CORE_EXPORT QgsGeometryOptions : public QObject
37{
38 Q_OBJECT
39
40 public:
45
51 bool removeDuplicateNodes() const;
52
58 void setRemoveDuplicateNodes( bool value );
59
67 double geometryPrecision() const;
68
76 void setGeometryPrecision( double value );
77
83 bool isActive() const;
84
90 void apply( QgsGeometry &geometry ) const;
91
97 QStringList geometryChecks() const;
98
104 void setGeometryChecks( const QStringList &geometryChecks );
105
111 QVariantMap checkConfiguration( const QString &checkId ) const;
112
118 void setCheckConfiguration( const QString &checkId, const QVariantMap &checkConfiguration );
119
125 void writeXml( QDomNode &node ) const;
126
132 void readXml( const QDomNode &node );
133
134#ifndef SIP_RUN
137#endif
138
139 signals:
140
147
154
161
170
171 private:
177 bool mRemoveDuplicateNodes = false;
178
186 double mGeometryPrecision = 0.0;
187
188 QStringList mGeometryChecks;
189 QVariantMap mCheckConfiguration;
190};
191
192#endif // QGSGEOMETRYOPTIONS_H
bool isActive() const
Determines if at least one fix is enabled.
void removeDuplicateNodesChanged()
Automatically remove duplicate nodes on all geometries which are edited on this layer.
void geometryChecksChanged()
A list of activated geometry checks.
double geometryPrecision() const
The precision in which geometries on this layer should be saved.
bool removeDuplicateNodes() const
Automatically remove duplicate nodes on all geometries which are edited on this layer.
void setGeometryPrecision(double value)
The precision in which geometries on this layer should be saved.
void setRemoveDuplicateNodes(bool value)
Automatically remove duplicate nodes on all geometries which are edited on this layer.
void readXml(const QDomNode &node)
Read the geometry options from node.
QgsGeometryOptions()
Create a new QgsGeometryOptions object.
void setCheckConfiguration(const QString &checkId, const QVariantMap &checkConfiguration)
Set the configuration for the check checkId.
static const QgsSettingsEntryString * settingsGeometryValidationDefaultChecks
Settings entry search path for templates.
QStringList geometryChecks() const
A list of activated geometry checks.
void checkConfigurationChanged()
Access the configuration for the check checkId.
void apply(QgsGeometry &geometry) const
Apply any fixes configured on this class to geometry.
void geometryPrecisionChanged()
The precision in which geometries on this layer should be saved.
void writeXml(QDomNode &node) const
Write the geometry options to the node.
void setGeometryChecks(const QStringList &geometryChecks)
A list of activated geometry checks.
QVariantMap checkConfiguration(const QString &checkId) const
Access the configuration for the check checkId.
A geometry is the spatial representation of a feature.
A string settings entry.