16#ifndef QGSMESHADVANCEDEDITING_H
17#define QGSMESHADVANCEDEDITING_H
64 virtual QString
text()
const;
103 QString
text()
const override;
108 struct FaceRefinement
110 QList<int> newVerticesLocalIndex;
111 QList<bool> refinedFaceNeighbor;
112 QList<bool> borderFaceNeighbor;
113 int newCenterVertexIndex;
114 QList<int> newFacesChangesIndex;
119 QList<bool> refinedFacesNeighbor;
120 QList<bool> borderFacesNeighbor;
121 QList<bool> unchangeFacesNeighbor;
122 QList<int> newVerticesLocalIndex;
127 void createNewVerticesAndRefinedFaces( QgsMeshEditor *meshEditor,
128 QSet<int> &facesToRefine,
129 QHash<int, FaceRefinement> &facesRefinement );
131 bool createNewBorderFaces( QgsMeshEditor *meshEditor,
132 const QSet<int> &facesToRefine,
133 QHash<int, FaceRefinement> &facesRefinement,
134 QHash<int, BorderFace> &borderFaces );
168 QString
text()
const override;
175 void setExpressions(
const QString &expressionX,
const QString &expressionY,
const QString &expressionZ );
209 QString mExpressionX;
210 QString mExpressionY;
211 QString mExpressionZ;
212 QHash<int, int> mChangingVertexMap;
213 bool mZFromTerrain =
false;
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
QString message() const
Returns a message that can be provided by the advanced editing when applying is done.
friend class QgsMeshEditor
virtual QgsTopologicalMesh::Changes apply(QgsMeshEditor *meshEditor)=0
Apply a change to mesh Editor.
void setInputVertices(const QList< int > verticesIndexes)
Sets the input vertices indexes that will be used for the editing.
virtual ~QgsMeshAdvancedEditing()
void clear()
Removes all data provided to the editing or created by the editing.
QList< int > mInputVertices
virtual bool isFinished() const
Returns whether the advanced edit is finished, if not, this edit has to be applied again with QgsMesh...
virtual QString text() const
Returns a short text string describing what this advanced edit does. Default implementation return a ...
void setInputFaces(const QList< int > faceIndexes)
Sets the input faces indexes that will be used for the editing.
QString text() const override
Returns a short text string describing what this advanced edit does. Default implementation return a ...
friend class TestQgsMeshEditor
Handles edit operations on a mesh layer.
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Base class for providing feedback from a processing algorithm.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
Contains topological differences between two states of a topological mesh, only accessible from the Q...
QgsPoint QgsMeshVertex
xyz coords of vertex