QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
|
#include <qgsvectorlayereditutils.h>
Public Member Functions | |
QgsVectorLayerEditUtils (QgsVectorLayer *layer) | |
Qgis::GeometryOperationResult | addPart (const QgsPointSequence &ring, QgsFeatureId featureId) |
Adds a new part polygon to a multipart feature. More... | |
Q_DECL_DEPRECATED Qgis::GeometryOperationResult | addPart (const QVector< QgsPointXY > &ring, QgsFeatureId featureId) |
Adds a new part polygon to a multipart feature. More... | |
Qgis::GeometryOperationResult | addPart (QgsCurve *ring, QgsFeatureId featureId) |
Adds a new part polygon to a multipart feature. More... | |
Qgis::GeometryOperationResult | addRing (const QgsPointSequence &ring, const QgsFeatureIds &targetFeatureIds=QgsFeatureIds(), QgsFeatureId *modifiedFeatureId=nullptr) |
Adds a ring to polygon/multipolygon features. More... | |
Q_DECL_DEPRECATED Qgis::GeometryOperationResult | addRing (const QVector< QgsPointXY > &ring, const QgsFeatureIds &targetFeatureIds=QgsFeatureIds(), QgsFeatureId *modifiedFeatureId=nullptr) |
Adds a ring to polygon/multipolygon features. More... | |
Qgis::GeometryOperationResult | addRing (QgsCurve *ring, const QgsFeatureIds &targetFeatureIds=QgsFeatureIds(), QgsFeatureId *modifiedFeatureId=nullptr) |
Adds a ring to polygon/multipolygon features. More... | |
Qgis::GeometryOperationResult | addRingV2 (QgsCurve *ring, const QgsFeatureIds &targetFeatureIds=QgsFeatureIds(), QgsFeatureIds *modifiedFeatureIds=nullptr) |
Adds a ring to polygon/multipolygon features. More... | |
int | addTopologicalPoints (const QgsGeometry &geom) |
Adds topological points for every vertex of the geometry. More... | |
int | addTopologicalPoints (const QgsPoint &p) |
Adds a vertex to segments which intersect point p but don't already have a vertex there. More... | |
int | addTopologicalPoints (const QgsPointSequence &ps) |
Adds a vertex to segments which intersect point p but don't already have a vertex there. More... | |
int | addTopologicalPoints (const QgsPointXY &p) |
Adds a vertex to segments which intersect point p but don't already have a vertex there. More... | |
Qgis::VectorEditResult | deleteVertex (QgsFeatureId featureId, int vertex) |
Deletes a vertex from a feature. More... | |
bool | insertVertex (const QgsPoint &point, QgsFeatureId atFeatureId, int beforeVertex) |
Inserts a new vertex before the given vertex number, in the given ring, item (first number is index 0), and feature Not meaningful for Point geometries. More... | |
bool | insertVertex (double x, double y, QgsFeatureId atFeatureId, int beforeVertex) |
Insert a new vertex before the given vertex number, in the given ring, item (first number is index 0), and feature Not meaningful for Point geometries. More... | |
bool | moveVertex (const QgsPoint &p, QgsFeatureId atFeatureId, int atVertex) |
Moves the vertex at the given position number, ring and item (first number is index 0), and feature to the given coordinates. More... | |
bool | moveVertex (double x, double y, QgsFeatureId atFeatureId, int atVertex) |
Moves the vertex at the given position number, ring and item (first number is index 0), and feature to the given coordinates. More... | |
Qgis::GeometryOperationResult | splitFeatures (const QgsCurve *curve, QgsPointSequence &topologyTestPoints, bool preserveCircular=false, bool topologicalEditing=false) |
Splits features cut by the given curve. More... | |
Qgis::GeometryOperationResult | splitFeatures (const QgsPointSequence &splitLine, bool topologicalEditing=false) |
Splits features cut by the given line. More... | |
Q_DECL_DEPRECATED Qgis::GeometryOperationResult | splitFeatures (const QVector< QgsPointXY > &splitLine, bool topologicalEditing=false) |
Splits features cut by the given line. More... | |
Qgis::GeometryOperationResult | splitParts (const QgsPointSequence &splitLine, bool topologicalEditing=false) |
Splits parts cut by the given line. More... | |
Q_DECL_DEPRECATED Qgis::GeometryOperationResult | splitParts (const QVector< QgsPointXY > &splitLine, bool topologicalEditing=false) |
Splits parts cut by the given line. More... | |
int | translateFeature (QgsFeatureId featureId, double dx, double dy) |
Translates feature by dx, dy. More... | |
Definition at line 31 of file qgsvectorlayereditutils.h.
QgsVectorLayerEditUtils::QgsVectorLayerEditUtils | ( | QgsVectorLayer * | layer | ) |
Definition at line 34 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::addPart | ( | const QgsPointSequence & | ring, |
QgsFeatureId | featureId | ||
) |
Adds a new part polygon to a multipart feature.
Definition at line 238 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::addPart | ( | const QVector< QgsPointXY > & | ring, |
QgsFeatureId | featureId | ||
) |
Adds a new part polygon to a multipart feature.
QgsGeometry::InvalidInput
Definition at line 228 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::addPart | ( | QgsCurve * | ring, |
QgsFeatureId | featureId | ||
) |
Adds a new part polygon to a multipart feature.
Definition at line 273 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::addRing | ( | const QgsPointSequence & | ring, |
const QgsFeatureIds & | targetFeatureIds = QgsFeatureIds() , |
||
QgsFeatureId * | modifiedFeatureId = nullptr |
||
) |
Adds a ring to polygon/multipolygon features.
ring | ring to add |
targetFeatureIds | if specified, only these features will be the candidates for adding a ring. Otherwise all intersecting features are tested and the ring is added to the first valid feature. |
modifiedFeatureId | if specified, feature ID for feature that ring was added to will be stored in this parameter |
Definition at line 200 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::addRing | ( | const QVector< QgsPointXY > & | ring, |
const QgsFeatureIds & | targetFeatureIds = QgsFeatureIds() , |
||
QgsFeatureId * | modifiedFeatureId = nullptr |
||
) |
Adds a ring to polygon/multipolygon features.
ring | ring to add |
targetFeatureIds | if specified, only these features will be the candidates for adding a ring. Otherwise all intersecting features are tested and the ring is added to the first valid feature. |
modifiedFeatureId | if specified, feature ID for feature that ring was added to will be stored in this parameter |
Definition at line 190 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::addRing | ( | QgsCurve * | ring, |
const QgsFeatureIds & | targetFeatureIds = QgsFeatureIds() , |
||
QgsFeatureId * | modifiedFeatureId = nullptr |
||
) |
Adds a ring to polygon/multipolygon features.
ring | ring to add |
targetFeatureIds | if specified, only these features will be the candidates for adding a ring. Otherwise all intersecting features are tested and the ring is added to the first valid feature. |
modifiedFeatureId | if specified, feature ID for feature that ring was added to will be stored in this parameter |
Definition at line 206 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::addRingV2 | ( | QgsCurve * | ring, |
const QgsFeatureIds & | targetFeatureIds = QgsFeatureIds() , |
||
QgsFeatureIds * | modifiedFeatureIds = nullptr |
||
) |
Adds a ring to polygon/multipolygon features.
ring | ring to add (ownership is transferred) |
targetFeatureIds | if specified, only these features will be the candidates for adding a ring. Otherwise all intersecting features are tested and the ring is added to all valid features. |
modifiedFeatureIds | if specified, feature IDS for features that ring was added to will be stored in this parameter |
Definition at line 219 of file qgsvectorlayereditutils.cpp.
int QgsVectorLayerEditUtils::addTopologicalPoints | ( | const QgsGeometry & | geom | ) |
Adds topological points for every vertex of the geometry.
geom | the geometry where each vertex is added to segments of other features |
Definition at line 577 of file qgsvectorlayereditutils.cpp.
int QgsVectorLayerEditUtils::addTopologicalPoints | ( | const QgsPoint & | p | ) |
Adds a vertex to segments which intersect point p but don't already have a vertex there.
If a feature already has a vertex at position p, no additional vertex is inserted. This method is useful for topological editing.
Definition at line 602 of file qgsvectorlayereditutils.cpp.
int QgsVectorLayerEditUtils::addTopologicalPoints | ( | const QgsPointSequence & | ps | ) |
Adds a vertex to segments which intersect point p but don't already have a vertex there.
If a feature already has a vertex at position p, no additional vertex is inserted. This method is useful for topological editing.
Definition at line 681 of file qgsvectorlayereditutils.cpp.
int QgsVectorLayerEditUtils::addTopologicalPoints | ( | const QgsPointXY & | p | ) |
Adds a vertex to segments which intersect point p but don't already have a vertex there.
If a feature already has a vertex at position p, no additional vertex is inserted. This method is useful for topological editing.
Definition at line 706 of file qgsvectorlayereditutils.cpp.
Qgis::VectorEditResult QgsVectorLayerEditUtils::deleteVertex | ( | QgsFeatureId | featureId, |
int | vertex | ||
) |
Deletes a vertex from a feature.
featureId | ID of feature to remove vertex from |
vertex | index of vertex to delete |
Definition at line 97 of file qgsvectorlayereditutils.cpp.
bool QgsVectorLayerEditUtils::insertVertex | ( | const QgsPoint & | point, |
QgsFeatureId | atFeatureId, | ||
int | beforeVertex | ||
) |
Inserts a new vertex before the given vertex number, in the given ring, item (first number is index 0), and feature Not meaningful for Point geometries.
Definition at line 56 of file qgsvectorlayereditutils.cpp.
bool QgsVectorLayerEditUtils::insertVertex | ( | double | x, |
double | y, | ||
QgsFeatureId | atFeatureId, | ||
int | beforeVertex | ||
) |
Insert a new vertex before the given vertex number, in the given ring, item (first number is index 0), and feature Not meaningful for Point geometries.
Definition at line 39 of file qgsvectorlayereditutils.cpp.
bool QgsVectorLayerEditUtils::moveVertex | ( | const QgsPoint & | p, |
QgsFeatureId | atFeatureId, | ||
int | atVertex | ||
) |
Moves the vertex at the given position number, ring and item (first number is index 0), and feature to the given coordinates.
Definition at line 79 of file qgsvectorlayereditutils.cpp.
bool QgsVectorLayerEditUtils::moveVertex | ( | double | x, |
double | y, | ||
QgsFeatureId | atFeatureId, | ||
int | atVertex | ||
) |
Moves the vertex at the given position number, ring and item (first number is index 0), and feature to the given coordinates.
Definition at line 73 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::splitFeatures | ( | const QgsCurve * | curve, |
QgsPointSequence & | topologyTestPoints, | ||
bool | preserveCircular = false , |
||
bool | topologicalEditing = false |
||
) |
Splits features cut by the given curve.
curve | line that splits the layer features | |
[out] | topologyTestPoints | topological points to be tested against other layers |
preserveCircular | whether circular strings are preserved after splitting | |
topologicalEditing | true if topological editing is enabled |
Definition at line 346 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::splitFeatures | ( | const QgsPointSequence & | splitLine, |
bool | topologicalEditing = false |
||
) |
Splits features cut by the given line.
splitLine | line that splits the layer features |
topologicalEditing | true if topological editing is enabled |
Definition at line 338 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::splitFeatures | ( | const QVector< QgsPointXY > & | splitLine, |
bool | topologicalEditing = false |
||
) |
Splits features cut by the given line.
splitLine | line that splits the layer features |
topologicalEditing | true if topological editing is enabled |
Definition at line 328 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::splitParts | ( | const QgsPointSequence & | splitLine, |
bool | topologicalEditing = false |
||
) |
Splits parts cut by the given line.
splitLine | line that splits the layer feature parts |
topologicalEditing | true if topological editing is enabled |
Definition at line 468 of file qgsvectorlayereditutils.cpp.
Qgis::GeometryOperationResult QgsVectorLayerEditUtils::splitParts | ( | const QVector< QgsPointXY > & | splitLine, |
bool | topologicalEditing = false |
||
) |
Splits parts cut by the given line.
splitLine | line that splits the layer feature parts |
topologicalEditing | true if topological editing is enabled |
QgsGeometry::SplitCannotSplitPoint
Definition at line 458 of file qgsvectorlayereditutils.cpp.
int QgsVectorLayerEditUtils::translateFeature | ( | QgsFeatureId | featureId, |
double | dx, | ||
double | dy | ||
) |
Translates feature by dx, dy.
featureId | id of the feature to translate |
dx | translation of x-coordinate |
dy | translation of y-coordinate |
Definition at line 309 of file qgsvectorlayereditutils.cpp.