From: eap Date: Thu, 11 Feb 2010 08:25:06 +0000 (+0000) Subject: 0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh comput... X-Git-Tag: V5_1_4a1~98 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=7be9f329c4c3d3a870ccbfa44fe90ff07987c63d;p=modules%2Fsmesh.git 0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen * Fix GetOrderedEdges(): workaroud for BRepTools_WireExplorer, which return no edges if they are internal --- diff --git a/src/SMESH/SMESH_Block.cxx b/src/SMESH/SMESH_Block.cxx index 821d8fa9f..14b373536 100644 --- a/src/SMESH/SMESH_Block.cxx +++ b/src/SMESH/SMESH_Block.cxx @@ -1000,6 +1000,11 @@ int SMESH_Block::GetOrderedEdges (const TopoDS_Face& theFace, // edge = TopoDS::Edge( edge.Oriented( wExp.Orientation() )); theEdges.push_back( edge ); } + if ( iE == 0 ) // wExp returns nothing if e.g. the wire contains one internal edge + { // Issue 0020676 + for ( TopoDS_Iterator e( *wlIt ); e.More(); e.Next(), ++iE ) + theEdges.push_back( TopoDS::Edge( e.Value() )); + } theNbVertexInWires.push_back( iE ); iE = 0; if ( wlIt == aWireList.begin() && theEdges.size() > 1 ) { // the outer wire