QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
Classes | Static Public Member Functions | List of all members
QgsGeometryCheckerUtils Class Reference

Contains utilities required for geometry checks. More...

#include <qgsgeometrycheckerutils.h>

Classes

class  LayerFeature
 A layer feature combination to uniquely identify and access a feature in a set of layers. More...
 
class  LayerFeatures
 Contains a set of layers and feature ids in those layers to pass to a geometry check. More...
 

Static Public Member Functions

static bool canDeleteVertex (const QgsAbstractGeometry *geom, int iPart, int iRing)
 
static std::unique_ptr< QgsGeometryEnginecreateGeomEngine (const QgsAbstractGeometry *geometry, double tolerance)
 
static void filter1DTypes (QgsAbstractGeometry *geom)
 
static const QgsAbstractGeometrygetGeomPart (const QgsAbstractGeometry *geom, int partIdx)
 
static QgsAbstractGeometrygetGeomPart (QgsAbstractGeometry *geom, int partIdx)
 
static QList< QgsPointlineIntersections (const QgsLineString *line1, const QgsLineString *line2, double tol)
 
static bool pointOnLine (const QgsPoint &p, const QgsLineString *line, double tol, bool excludeExtremities=false)
 
static QList< const QgsLineString * > polygonRings (const QgsPolygon *polygon)
 
static int polyLineSize (const QgsAbstractGeometry *geom, int iPart, int iRing, bool *isClosed=nullptr)
 Returns the number of points in a polyline, accounting for duplicate start and end point if the polyline is closed. More...
 
static double sharedEdgeLength (const QgsAbstractGeometry *geom1, const QgsAbstractGeometry *geom2, double tol)
 

Detailed Description

Contains utilities required for geometry checks.

Note
This class is a technology preview and unstable API.
Since
QGIS 3.4

Definition at line 39 of file qgsgeometrycheckerutils.h.

Member Function Documentation

◆ canDeleteVertex()

static bool QgsGeometryCheckerUtils::canDeleteVertex ( const QgsAbstractGeometry geom,
int  iPart,
int  iRing 
)
inlinestatic

Definition at line 254 of file qgsgeometrycheckerutils.h.

◆ createGeomEngine()

std::unique_ptr< QgsGeometryEngine > QgsGeometryCheckerUtils::createGeomEngine ( const QgsAbstractGeometry geometry,
double  tolerance 
)
static

Definition at line 263 of file qgsgeometrycheckerutils.cpp.

◆ filter1DTypes()

void QgsGeometryCheckerUtils::filter1DTypes ( QgsAbstractGeometry geom)
static

Definition at line 303 of file qgsgeometrycheckerutils.cpp.

◆ getGeomPart() [1/2]

const QgsAbstractGeometry * QgsGeometryCheckerUtils::getGeomPart ( const QgsAbstractGeometry geom,
int  partIdx 
)
static

Definition at line 277 of file qgsgeometrycheckerutils.cpp.

◆ getGeomPart() [2/2]

QgsAbstractGeometry * QgsGeometryCheckerUtils::getGeomPart ( QgsAbstractGeometry geom,
int  partIdx 
)
static

Definition at line 268 of file qgsgeometrycheckerutils.cpp.

◆ lineIntersections()

QList< QgsPoint > QgsGeometryCheckerUtils::lineIntersections ( const QgsLineString line1,
const QgsLineString line2,
double  tol 
)
static

Definition at line 341 of file qgsgeometrycheckerutils.cpp.

◆ pointOnLine()

bool QgsGeometryCheckerUtils::pointOnLine ( const QgsPoint p,
const QgsLineString line,
double  tol,
bool  excludeExtremities = false 
)
static

Definition at line 325 of file qgsgeometrycheckerutils.cpp.

◆ polygonRings()

QList< const QgsLineString * > QgsGeometryCheckerUtils::polygonRings ( const QgsPolygon polygon)
static

Definition at line 286 of file qgsgeometrycheckerutils.cpp.

◆ polyLineSize()

static int QgsGeometryCheckerUtils::polyLineSize ( const QgsAbstractGeometry geom,
int  iPart,
int  iRing,
bool *  isClosed = nullptr 
)
inlinestatic

Returns the number of points in a polyline, accounting for duplicate start and end point if the polyline is closed.

Returns
The number of distinct points of the polyline

Definition at line 228 of file qgsgeometrycheckerutils.h.

◆ sharedEdgeLength()

double QgsGeometryCheckerUtils::sharedEdgeLength ( const QgsAbstractGeometry geom1,
const QgsAbstractGeometry geom2,
double  tol 
)
static

Definition at line 363 of file qgsgeometrycheckerutils.cpp.


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