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

Contains geometry relation and modification algorithms. More...

#include <qgsgeometryengine.h>

Inheritance diagram for QgsGeometryEngine:
Inheritance graph
[legend]

Public Member Functions

 QgsGeometryEngine (const QgsAbstractGeometryV2 *geometry)
 
virtual ~QgsGeometryEngine ()
 
virtual double area (QString *errorMsg=nullptr) const =0
 
virtual QgsAbstractGeometryV2buffer (double distance, int segments, QString *errorMsg=nullptr) const =0
 
virtual QgsAbstractGeometryV2buffer (double distance, int segments, int endCapStyle, int joinStyle, double mitreLimit, QString *errorMsg=nullptr) const =0
 
virtual bool centroid (QgsPointV2 &pt, QString *errorMsg=nullptr) const =0
 
virtual QgsAbstractGeometryV2combine (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual QgsAbstractGeometryV2combine (const QList< QgsAbstractGeometryV2 * > &, QString *errorMsg=nullptr) const =0
 
virtual bool contains (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual QgsAbstractGeometryV2convexHull (QString *errorMsg=nullptr) const =0
 
virtual bool crosses (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual QgsAbstractGeometryV2difference (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual bool disjoint (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual double distance (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual QgsAbstractGeometryV2envelope (QString *errorMsg=nullptr) const =0
 
virtual void geometryChanged ()=0
 
virtual QgsAbstractGeometryV2interpolate (double distance, QString *errorMsg=nullptr) const =0
 
virtual QgsAbstractGeometryV2intersection (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual bool intersects (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual bool isEmpty (QString *errorMsg) const =0
 
virtual bool isEqual (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual bool isValid (QString *errorMsg=nullptr) const =0
 
virtual double length (QString *errorMsg=nullptr) const =0
 
virtual QgsAbstractGeometryV2offsetCurve (double distance, int segments, int joinStyle, double mitreLimit, QString *errorMsg=nullptr) const =0
 
virtual bool overlaps (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual bool pointOnSurface (QgsPointV2 &pt, QString *errorMsg=nullptr) const =0
 
virtual void prepareGeometry ()=0
 
virtual QString relate (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 Returns the Dimensional Extended 9 Intersection Model (DE-9IM) representation of the relationship between the geometries. More...
 
virtual bool relatePattern (const QgsAbstractGeometryV2 &geom, const QString &pattern, QString *errorMsg=nullptr) const =0
 Tests whether two geometries are related by a specified Dimensional Extended 9 Intersection Model (DE-9IM) pattern. More...
 
virtual QgsAbstractGeometryV2simplify (double tolerance, QString *errorMsg=nullptr) const =0
 
virtual int splitGeometry (const QgsLineStringV2 &splitLine, QList< QgsAbstractGeometryV2 *> &newGeometries, bool topological, QgsPointSequenceV2 &topologyTestPoints, QString *errorMsg=nullptr) const
 
virtual QgsAbstractGeometryV2symDifference (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual bool touches (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 
virtual bool within (const QgsAbstractGeometryV2 &geom, QString *errorMsg=nullptr) const =0
 

Protected Member Functions

 QgsGeometryEngine ()
 

Protected Attributes

const QgsAbstractGeometryV2mGeometry
 

Detailed Description

Contains geometry relation and modification algorithms.

Note
added in QGIS 2.10
this API is not considered stable and may change for 2.12

Definition at line 32 of file qgsgeometryengine.h.

Constructor & Destructor Documentation

◆ QgsGeometryEngine() [1/2]

QgsGeometryEngine::QgsGeometryEngine ( const QgsAbstractGeometryV2 geometry)
inline

Definition at line 35 of file qgsgeometryengine.h.

◆ ~QgsGeometryEngine()

virtual QgsGeometryEngine::~QgsGeometryEngine ( )
inlinevirtual

Definition at line 36 of file qgsgeometryengine.h.

◆ QgsGeometryEngine() [2/2]

QgsGeometryEngine::QgsGeometryEngine ( )
protected

Member Function Documentation

◆ area()

virtual double QgsGeometryEngine::area ( QString errorMsg = nullptr) const
pure virtual

Implemented in QgsGeos.

◆ buffer() [1/2]

virtual QgsAbstractGeometryV2* QgsGeometryEngine::buffer ( double  distance,
int  segments,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ buffer() [2/2]

virtual QgsAbstractGeometryV2* QgsGeometryEngine::buffer ( double  distance,
int  segments,
int  endCapStyle,
int  joinStyle,
double  mitreLimit,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ centroid()

virtual bool QgsGeometryEngine::centroid ( QgsPointV2 pt,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ combine() [1/2]

virtual QgsAbstractGeometryV2* QgsGeometryEngine::combine ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ combine() [2/2]

virtual QgsAbstractGeometryV2* QgsGeometryEngine::combine ( const QList< QgsAbstractGeometryV2 * > &  ,
QString errorMsg = nullptr 
) const
pure virtual

◆ contains()

virtual bool QgsGeometryEngine::contains ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ convexHull()

virtual QgsAbstractGeometryV2* QgsGeometryEngine::convexHull ( QString errorMsg = nullptr) const
pure virtual

Implemented in QgsGeos.

◆ crosses()

virtual bool QgsGeometryEngine::crosses ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ difference()

virtual QgsAbstractGeometryV2* QgsGeometryEngine::difference ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ disjoint()

virtual bool QgsGeometryEngine::disjoint ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ distance()

virtual double QgsGeometryEngine::distance ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ envelope()

virtual QgsAbstractGeometryV2* QgsGeometryEngine::envelope ( QString errorMsg = nullptr) const
pure virtual

Implemented in QgsGeos.

◆ geometryChanged()

virtual void QgsGeometryEngine::geometryChanged ( )
pure virtual

Implemented in QgsGeos.

◆ interpolate()

virtual QgsAbstractGeometryV2* QgsGeometryEngine::interpolate ( double  distance,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ intersection()

virtual QgsAbstractGeometryV2* QgsGeometryEngine::intersection ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ intersects()

virtual bool QgsGeometryEngine::intersects ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ isEmpty()

virtual bool QgsGeometryEngine::isEmpty ( QString errorMsg) const
pure virtual

Implemented in QgsGeos.

◆ isEqual()

virtual bool QgsGeometryEngine::isEqual ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ isValid()

virtual bool QgsGeometryEngine::isValid ( QString errorMsg = nullptr) const
pure virtual

Implemented in QgsGeos.

◆ length()

virtual double QgsGeometryEngine::length ( QString errorMsg = nullptr) const
pure virtual

Implemented in QgsGeos.

◆ offsetCurve()

virtual QgsAbstractGeometryV2* QgsGeometryEngine::offsetCurve ( double  distance,
int  segments,
int  joinStyle,
double  mitreLimit,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ overlaps()

virtual bool QgsGeometryEngine::overlaps ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ pointOnSurface()

virtual bool QgsGeometryEngine::pointOnSurface ( QgsPointV2 pt,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ prepareGeometry()

virtual void QgsGeometryEngine::prepareGeometry ( )
pure virtual

Implemented in QgsGeos.

◆ relate()

virtual QString QgsGeometryEngine::relate ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Returns the Dimensional Extended 9 Intersection Model (DE-9IM) representation of the relationship between the geometries.

Parameters
geomgeometry to relate to
errorMsgdestination storage for any error message
Returns
DE-9IM string for relationship, or an empty string if an error occurred
Note
added in QGIS 2.12

Implemented in QgsGeos.

◆ relatePattern()

virtual bool QgsGeometryEngine::relatePattern ( const QgsAbstractGeometryV2 geom,
const QString pattern,
QString errorMsg = nullptr 
) const
pure virtual

Tests whether two geometries are related by a specified Dimensional Extended 9 Intersection Model (DE-9IM) pattern.

Parameters
geomgeometry to relate to
patternDE-9IM pattern for match
errorMsgdestination storage for any error message
Returns
true if geometry relationship matches with pattern
Note
added in QGIS 2.14

Implemented in QgsGeos.

◆ simplify()

virtual QgsAbstractGeometryV2* QgsGeometryEngine::simplify ( double  tolerance,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ splitGeometry()

virtual int QgsGeometryEngine::splitGeometry ( const QgsLineStringV2 splitLine,
QList< QgsAbstractGeometryV2 *> &  newGeometries,
bool  topological,
QgsPointSequenceV2 topologyTestPoints,
QString errorMsg = nullptr 
) const
inlinevirtual

Reimplemented in QgsGeos.

Definition at line 88 of file qgsgeometryengine.h.

◆ symDifference()

virtual QgsAbstractGeometryV2* QgsGeometryEngine::symDifference ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ touches()

virtual bool QgsGeometryEngine::touches ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

◆ within()

virtual bool QgsGeometryEngine::within ( const QgsAbstractGeometryV2 geom,
QString errorMsg = nullptr 
) const
pure virtual

Implemented in QgsGeos.

Member Data Documentation

◆ mGeometry

const QgsAbstractGeometryV2* QgsGeometryEngine::mGeometry
protected

Definition at line 104 of file qgsgeometryengine.h.


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