Salome HOME
fix 2D_mesh_QuadranglePreference_01/B8
[modules/smesh.git] / src / StdMeshers / StdMeshers_QuadFromMedialAxis_1D2D.cxx
index 0b9005bcaa07fadefbd9c679a0774c0900a7bf3c..fa6a1f3b24515f57fde9b5eda9e4d5680a294c1d 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2021  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -240,7 +240,7 @@ namespace
   {
     TmpMesh()
     {
-      _myMeshDS = new SMESHDS_Mesh(/*id=*/0, /*isEmbeddedMode=*/true);
+      _meshDS = new SMESHDS_Mesh(/*id=*/0, /*isEmbeddedMode=*/true);
     }
   };
 
@@ -260,8 +260,8 @@ namespace
     virtual void ProcessEvent(const int                       event,
                               const int                       eventType,
                               SMESH_subMesh*                  faceSubMesh,
-                              SMESH_subMeshEventListenerData* data,
-                              const SMESH_Hypothesis*         hyp)
+                              SMESH_subMeshEventListenerData* /*data*/,
+                              const SMESH_Hypothesis*         /*hyp*/)
     {
       if ( eventType == SMESH_subMesh::ALGO_EVENT )
       {
@@ -1185,6 +1185,8 @@ namespace
         if ( !npCloseV._node || npCloseV._node == npVert._node )
         {
           npProj = npCloseN;
+          if ( i+1 < projToMerge.size() && u2NPClose == projToMerge[ i+1 ])
+            ++i;
           thePointsOnE.erase( u2NPClose );
           continue;
         }
@@ -1248,7 +1250,7 @@ namespace
   //================================================================================
 
   void separateNodes( SMESH_MesherHelper&            theHelper,
-                      const SMESH_MAT2d::MedialAxis& theMA,
+                      const SMESH_MAT2d::MedialAxis& /*theMA*/,
                       TMAPar2NPoints &               thePointsOnE,
                       SinuousFace&                   theSinuFace,
                       const vector< bool >&          theIsComputedEdge)
@@ -1720,8 +1722,8 @@ namespace
         if ( isComputed[ edgeIDs1[i]] &&
              isComputed[ edgeIDs2[i]] )
         {
-          int nbNodes1 = meshDS->MeshElements(edgeIDs[ edgeIDs1[i]] )->NbNodes();
-          int nbNodes2 = meshDS->MeshElements(edgeIDs[ edgeIDs2[i]] )->NbNodes();
+          smIdType nbNodes1 = meshDS->MeshElements(edgeIDs[ edgeIDs1[i]] )->NbNodes();
+          smIdType nbNodes2 = meshDS->MeshElements(edgeIDs[ edgeIDs2[i]] )->NbNodes();
           if ( nbNodes1 != nbNodes2 )
             return false;
           if (( int(i)-1 >= 0 ) &&
@@ -1932,7 +1934,7 @@ namespace
                           const vector<TopoDS_Edge>& theShortEdges,
                           SMESH_Algo*                the1dAlgo,
                           const bool                 theHasRadialHyp,
-                          const bool                 theIs2nd)
+                          const bool                 /*theIs2nd*/)
   {
     SMESH_Hypothesis::Hypothesis_Status aStatus;
     for ( size_t i = 0; i < theShortEdges.size(); ++i )