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
This commit is contained in:
eap 2010-02-11 08:25:06 +00:00
parent 04efa6b9dc
commit 7be9f329c4

View File

@ -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