QGIS API Documentation 3.99.0-Master (26c88405ac0)
Loading...
Searching...
No Matches
QgsGeometryTypeCheck Class Reference

A geometry type check. More...

#include <qgsgeometrytypecheck.h>

Inheritance diagram for QgsGeometryTypeCheck:

Public Member Functions

 QgsGeometryTypeCheck (QgsGeometryCheckContext *context, const QVariantMap &configuration, int allowedTypes)
QgsGeometryCheck::CheckType checkType () const override
 Returns the check type.
QList< Qgis::GeometryTypecompatibleGeometryTypes () const override
 A list of geometry types for which this check can be performed.
QString description () const override
 Returns a human readable description for this check.
void fixError (const QMap< QString, QgsFeaturePool * > &featurePools, QgsGeometryCheckError *error, int method, const QMap< QString, int > &mergeAttributeIndices, Changes &changes) const override
 Fixes the error error with the specified method.
QString id () const override
 Returns an id for this check.
QList< QgsSingleGeometryCheckError * > processGeometry (const QgsGeometry &geometry) const override
 Check the geometry for errors.
Q_DECL_DEPRECATED QStringList resolutionMethods () const override
 Returns a list of descriptions for available resolutions for errors.
Public Member Functions inherited from QgsSingleGeometryCheck
 QgsSingleGeometryCheck (const QgsGeometryCheckContext *context, const QVariantMap &configuration)
 Creates a new single geometry check.
QgsGeometryCheck::Result collectErrors (const QMap< QString, QgsFeaturePool * > &featurePools, QList< QgsGeometryCheckError * > &errors, QStringList &messages, QgsFeedback *feedback=nullptr, const QgsGeometryCheck::LayerFeatureIds &ids=QgsGeometryCheck::LayerFeatureIds()) const final
 The main worker method.
Public Member Functions inherited from QgsGeometryCheck
 QgsGeometryCheck (const QgsGeometryCheckContext *context, const QVariantMap &configuration)
 Create a new geometry check.
virtual ~QgsGeometryCheck ()=default
virtual QList< QgsGeometryCheckResolutionMethodavailableResolutionMethods () const
 Returns a list of available resolution methods.
template<class T>
configurationValue (const QString &name, const QVariant &defaultValue=QVariant())
 Returns the configuration value with the name, saved in the QGIS settings for this geometry check.
const QgsGeometryCheckContextcontext () const
 Returns the context.
virtual QgsGeometryCheck::Flags flags () const
 Flags for this geometry check.
virtual bool isCompatible (QgsVectorLayer *layer) const
 Returns if this geometry check is compatible with layer.
virtual void prepare (const QgsGeometryCheckContext *context, const QVariantMap &configuration)
 Will be run in the main thread before collectErrors() is called (which may be run from a background thread).

Static Public Member Functions

static QgsGeometryCheck::CheckType factoryCheckType ()
static QList< Qgis::GeometryTypefactoryCompatibleGeometryTypes ()
static QString factoryDescription ()
static QString factoryId ()
static bool factoryIsCompatible (QgsVectorLayer *layer)

Additional Inherited Members

Public Types inherited from QgsGeometryCheck
typedef QMap< QString, QMap< QgsFeatureId, QList< QgsGeometryCheck::Change > > > Changes
 A collection of changes.
enum  ChangeType { ChangeAdded , ChangeRemoved , ChangeChanged }
 Description of the type of a change. More...
enum  ChangeWhat { ChangeFeature , ChangePart , ChangeRing , ChangeNode }
 Description of a change to indicate at which level a change occurred. More...
enum  CheckType { FeatureNodeCheck , FeatureCheck , LayerCheck }
 The type of a check. More...
enum  Flag { AvailableInValidation = 1 << 1 }
 Flags for geometry checks. More...
typedef QFlags< FlagFlags
enum class  Result : int {
  Success = 0 , Canceled = 1 , DuplicatedUniqueId = 2 , InvalidReferenceLayer = 3 ,
  GeometryOverlayError = 4
}
 Result of the geometry checker operation. More...
Protected Member Functions inherited from QgsGeometryCheck
QMap< QString, QgsFeatureIdsallLayerFeatureIds (const QMap< QString, QgsFeaturePool * > &featurePools) const
 Returns all layers and feature ids.
Result checkUniqueId (const QgsGeometryCheckerUtils::LayerFeature layerFeature, QMap< QString, QSet< QVariant > > &uniqueIds) const
 Checks that there are no duplicated unique IDs.
void deleteFeatureGeometryPart (const QMap< QString, QgsFeaturePool * > &featurePools, const QString &layerId, QgsFeature &feature, int partIdx, Changes &changes) const
 Deletes a part of a feature geometry.
void deleteFeatureGeometryRing (const QMap< QString, QgsFeaturePool * > &featurePools, const QString &layerId, QgsFeature &feature, int partIdx, int ringIdx, Changes &changes) const
 Deletes a ring in a feature geometry.
void replaceFeatureGeometryPart (const QMap< QString, QgsFeaturePool * > &featurePools, const QString &layerId, QgsFeature &feature, int partIdx, QgsAbstractGeometry *newPartGeom, Changes &changes) const
 Replaces a part in a feature geometry.
double scaleFactor (const QPointer< QgsVectorLayer > &layer) const
 Determines the scale factor of a layer to the map coordinate reference system.
Protected Attributes inherited from QgsGeometryCheck
QVariantMap mConfiguration
const QgsGeometryCheckContextmContext

Detailed Description

A geometry type check.

Definition at line 56 of file qgsgeometrytypecheck.h.

Constructor & Destructor Documentation

◆ QgsGeometryTypeCheck()

QgsGeometryTypeCheck::QgsGeometryTypeCheck ( QgsGeometryCheckContext * context,
const QVariantMap & configuration,
int allowedTypes )
inline

Definition at line 60 of file qgsgeometrytypecheck.h.

Member Function Documentation

◆ checkType()

QgsGeometryCheck::CheckType QgsGeometryTypeCheck::checkType ( ) const
overridevirtual

Returns the check type.

Since
QGIS 3.4

Implements QgsGeometryCheck.

Definition at line 182 of file qgsgeometrytypecheck.cpp.

◆ compatibleGeometryTypes()

QList< Qgis::GeometryType > QgsGeometryTypeCheck::compatibleGeometryTypes ( ) const
inlineoverridevirtual

A list of geometry types for which this check can be performed.

Since
QGIS 3.4

Implements QgsGeometryCheck.

Definition at line 64 of file qgsgeometrytypecheck.h.

◆ description()

QString QgsGeometryTypeCheck::description ( ) const
overridevirtual

Returns a human readable description for this check.

Since
QGIS 3.4

Implements QgsGeometryCheck.

Definition at line 162 of file qgsgeometrytypecheck.cpp.

◆ factoryCheckType()

QgsGeometryCheck::CheckType QgsGeometryTypeCheck::factoryCheckType ( )
static

Definition at line 172 of file qgsgeometrytypecheck.cpp.

◆ factoryCompatibleGeometryTypes()

QList< Qgis::GeometryType > QgsGeometryTypeCheck::factoryCompatibleGeometryTypes ( )
inlinestatic

Definition at line 72 of file qgsgeometrytypecheck.h.

◆ factoryDescription()

QString QgsGeometryTypeCheck::factoryDescription ( )
static

Definition at line 157 of file qgsgeometrytypecheck.cpp.

◆ factoryId()

QString QgsGeometryTypeCheck::factoryId ( )
static

Definition at line 167 of file qgsgeometrytypecheck.cpp.

◆ factoryIsCompatible()

bool QgsGeometryTypeCheck::factoryIsCompatible ( QgsVectorLayer * layer)
inlinestatic

Definition at line 73 of file qgsgeometrytypecheck.h.

◆ fixError()

void QgsGeometryTypeCheck::fixError ( const QMap< QString, QgsFeaturePool * > & featurePools,
QgsGeometryCheckError * error,
int method,
const QMap< QString, int > & mergeAttributeIndices,
Changes & changes ) const
overridevirtual

Fixes the error error with the specified method.

Is executed on the main thread.

See also
availableResolutionMethods()
Since
QGIS 3.4

Reimplemented from QgsGeometryCheck.

Definition at line 37 of file qgsgeometrytypecheck.cpp.

◆ id()

QString QgsGeometryTypeCheck::id ( ) const
overridevirtual

Returns an id for this check.

Since
QGIS 3.4

Implements QgsGeometryCheck.

Definition at line 177 of file qgsgeometrytypecheck.cpp.

◆ processGeometry()

QList< QgsSingleGeometryCheckError * > QgsGeometryTypeCheck::processGeometry ( const QgsGeometry & geometry) const
overridevirtual

Check the geometry for errors.

It may make use of configuration options.

Returns a list of QgsSingleGeometryCheckErrors, ownership is transferred to the caller. An empty list is returned for geometries without errors.

Since
QGIS 3.4

Implements QgsSingleGeometryCheck.

Definition at line 25 of file qgsgeometrytypecheck.cpp.

◆ resolutionMethods()

QStringList QgsGeometryTypeCheck::resolutionMethods ( ) const
overridevirtual

Returns a list of descriptions for available resolutions for errors.

The index will be passed as method to

See also
fixError().
Deprecated
QGIS 3.12. Use availableResolutionMethods() instead.
Since
QGIS 3.4

Reimplemented from QgsGeometryCheck.

Definition at line 148 of file qgsgeometrytypecheck.cpp.


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