Salome HOME
bos #29266 EDF 24971 - SALOME crashes
authoreap <eap@opencascade.com>
Fri, 11 Mar 2022 11:46:25 +0000 (14:46 +0300)
committereap <eap@opencascade.com>
Fri, 11 Mar 2022 11:46:25 +0000 (14:46 +0300)
fix crash, meshing failure still there

src/StdMeshers/StdMeshers_QuadToTriaAdaptor.cxx

index 029d9472883b637a337694588f9c6f9ca0746ab4..c466e390e16ba9ae6e62dc7ed8837b71d51f9b82 100644 (file)
@@ -1512,9 +1512,9 @@ bool StdMeshers_QuadToTriaAdaptor::Compute2ndPart(SMESH_Mesh&
             double ang2 = fabs(VN2.Angle(VI2));
             double coef1 = 0.5 - (( ang1 < M_PI/3. ) ? cos(ang1)*0.25 : 0 );
             double coef2 = 0.5 - (( ang2 < M_PI/3. ) ? cos(ang2)*0.25 : 0 ); // cos(ang2) ?
-//             double coef2 = 0.5;
-//             if(ang2<PI/3)
-//               coef2 -= cos(ang1)*0.25;
+            //             double coef2 = 0.5;
+            //             if(ang2<PI/3)
+            //               coef2 -= cos(ang1)*0.25;
 
             VN1.Scale(coef1);
             VN2.Scale(coef2);
@@ -1529,9 +1529,11 @@ bool StdMeshers_QuadToTriaAdaptor::Compute2ndPart(SMESH_Mesh&
           MergeAdjacent( PrmI, nodesToMove );
           MergeAdjacent( PrmJ, nodesToMove );
 
+          apexI = PrmI->GetNode( PYRAM_APEX ); // apexI can be removed by merge
+
         } // end if(hasInt)
-      } // loop on suspectPyrams
-    }  // loop on 4 base nodes of PrmI
+      } // loop on 4 base nodes of PrmI
+    }  // loop on suspectPyrams
 
   } // loop on all pyramids