78        SIP_SKIP QVector<FaceNeighbors> facesNeighborhood() 
const;
 
   81        int vertexToFace( 
int vertexIndex ) 
const;
 
   84        QVector<QgsMeshFace> mFaces; 
 
   85        QVector<FaceNeighbors> mFacesNeighborhood; 
 
   86        QMultiHash<int, int> mVerticesToFace; 
 
   87        QList<int> mBoundaries; 
 
 
  110        SIP_SKIP QVector<QgsMeshFace> addedFaces() 
const;
 
  117        SIP_SKIP QVector<QgsMeshFace> removedFaces() 
const;
 
  120        QList<int> removedFaceIndexes() 
const;
 
  124        QVector<QgsMeshVertex> addedVertices() 
const;
 
  126        QVector<QgsPoint> addedVertices() 
const;
 
  130        QList<int> verticesToRemoveIndexes() 
const;
 
  133        QList<int> changedCoordinatesVerticesIndexes() 
const;
 
  136        QList<double> newVerticesZValues() 
const;
 
  139        QList<QgsPointXY> newVerticesXYValues() 
const;
 
  142        QList<QgsPointXY> oldVerticesXYValues() 
const;
 
  145        QList<int> nativeFacesIndexesGeometryChanged() 
const;
 
  148        bool isEmpty() 
const;
 
  151        int mAddedFacesFirstIndex = 0;
 
  177        int addedFaceIndexInMesh( 
int internalIndex ) 
const;
 
  178        int removedFaceIndexInMesh( 
int internalIndex ) 
const;
 
 
  199    QVector<int> neighborsOfFace( 
int faceIndex ) 
const;
 
  202    QList<int> facesAroundVertex( 
int vertexIndex ) 
const;
 
  208    int firstFaceLinked( 
int vertexIndex ) 
const;
 
  211    bool isVertexOnBoundary( 
int vertexIndex ) 
const;
 
  214    bool isVertexFree( 
int vertexIndex ) 
const;
 
  217    QList<int> freeVerticesIndexes() 
const;
 
  247    Changes removeFaces( 
const QList<int> &facesIndexes );
 
  252    bool edgeCanBeFlipped( 
int vertexIndex1, 
int vertexIndex2 ) 
const;
 
  258    Changes flipEdge( 
int vertexIndex1, 
int vertexIndex2 );
 
  266    bool delaunayConditionForEdge( 
int vertexIndex1, 
int vertexIndex2 );
 
  271    bool canBeMerged( 
int vertexIndex1, 
int vertexIndex2 ) 
const;
 
  277    Changes merge( 
int vertexIndex1, 
int vertexIndex2 );
 
  282    bool canBeSplit( 
int faceIndex ) 
const;
 
  288    Changes splitFace( 
int faceIndex );
 
  313    Changes removeVertexFillHole( 
int vertexIndex );
 
  320    Changes removeVertices( 
const QList<int> &vertices );
 
  325    Changes changeZValue( 
const QList<int> &verticesIndexes, 
const QList<double> &newValues );
 
  330    Changes changeXYValue( 
const QList<int> &verticesIndexes, 
const QList<QgsPointXY> &newValues );
 
  334    void applyChanges( 
const Changes &changes );
 
  337    void reverseChanges( 
const Changes &changes );
 
  371      return face.indexOf( vertexIndex );
 
 
  375    static int vertexPositionInFace( 
const QgsMesh &mesh, 
int vertexIndex, 
int faceIndex );
 
  380    static TopologicalFaces  createTopologicalFaces(
 
  381      const QVector<QgsMeshFace> &faces,
 
  382      QVector<int> *globalVertexToFace,
 
  384      bool allowUniqueSharedVertex );
 
  387    QSet<int> concernedFacesBy( 
const QList<int> &faceIndexes ) 
const;
 
  390    void referenceAsFreeVertex( 
int vertexIndex );
 
  392    void dereferenceAsFreeVertex( 
int vertexIndex );
 
  398    bool eitherSideFacesAndVertices( 
int vertexIndex1,
 
  402                                     int &neighborVertex1InFace1,
 
  403                                     int &neighborVertex1InFace2,
 
  404                                     int &neighborVertex2inFace1,
 
  405                                     int &neighborVertex2inFace2 ) 
const;
 
  407    bool renumberVertices( QVector<int> &oldToNewIndex ) 
const;
 
  408    bool renumberFaces( QVector<int> &oldToNewIndex ) 
const;
 
  412    QVector<int> mVertexToFace;
 
  413    QVector<FaceNeighbors> mFacesNeighborhood;
 
  415    QSet<int> mFreeVertices;
 
  417    int mMaximumVerticesPerFace = 0;