X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH%2FSMESH_MesherHelper.cxx;h=6ed52110d8303f0353d0be27cc2837d2b27c6173;hp=8efefaf4726ea360f2f56e8999bd3210d2e5e6d0;hb=44cfe3f661cf16b7253c2635368807ea332a4cc5;hpb=18e7b9c7521fc13f643973ea953b08bdbf6dfbda diff --git a/src/SMESH/SMESH_MesherHelper.cxx b/src/SMESH/SMESH_MesherHelper.cxx index 8efefaf47..6ed52110d 100644 --- a/src/SMESH/SMESH_MesherHelper.cxx +++ b/src/SMESH/SMESH_MesherHelper.cxx @@ -1610,8 +1610,10 @@ const SMDS_MeshNode* SMESH_MesherHelper::GetMediumNode(const SMDS_MeshNode* n1, { F = TopoDS::Face(meshDS->IndexToShape( faceID = pos.first )); uv[0] = GetNodeUV(F,n1,n2, force3d ? 0 : &uvOK[0]); - if ( HasDegeneratedEdges() && !force3d ) // IPAL52850 (degen VERTEX not at singularity) + if (( !force3d ) && + ( HasDegeneratedEdges() || GetSurface( F )->HasSingularities( 1e-7 ))) { + // IPAL52850 (degen VERTEX not at singularity) // project middle point to a surface SMESH_TNodeXYZ p1( n1 ), p2( n2 ); gp_Pnt pMid = 0.5 * ( p1 + p2 );