16 #ifndef QGSVECTORTOPOLOGY_H
17 #define QGSVECTORTOPOLOGY_H
38 virtual void geometryChanged() = 0;
39 virtual void prepareGeometry() = 0;
47 virtual QgsAbstractGeometryV2* buffer(
double distance,
int segments,
int endCapStyle,
int joinStyle,
double mitreLimit,
QString* errorMsg = 0 )
const = 0;
72 virtual double area(
QString* errorMsg = 0 )
const = 0;
73 virtual double length(
QString* errorMsg = 0 )
const = 0;
74 virtual bool isValid(
QString* errorMsg = 0 )
const = 0;
76 virtual bool isEmpty(
QString* errorMsg )
const = 0;
83 Q_UNUSED( splitLine );
84 Q_UNUSED( newGeometries );
85 Q_UNUSED( topological );
86 Q_UNUSED( topologyTestPoints );
91 virtual QgsAbstractGeometryV2* offsetCurve(
double distance,
int segments,
int joinStyle,
double mitreLimit,
QString* errorMsg = 0 )
const = 0;
99 #endif // QGSVECTORTOPOLOGY_H
QgsGeometryEngine(const QgsAbstractGeometryV2 *geometry)
virtual int splitGeometry(const QgsLineStringV2 &splitLine, QList< QgsAbstractGeometryV2 * > &newGeometries, bool topological, QList< QgsPointV2 > &topologyTestPoints, QString *errorMsg=0) const
Abstract base class for all geometries.
virtual ~QgsGeometryEngine()
Line string geometry type.
const QgsAbstractGeometryV2 * mGeometry
Contains geometry relation and modification algorithms.