mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-11-15 10:08:34 +05:00
0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen
* In GetOrderedEdges(), preview presence of the internal vertex within the face
This commit is contained in:
parent
6339de2d04
commit
331cc524a8
@ -981,10 +981,13 @@ int SMESH_Block::GetOrderedEdges (const TopoDS_Face& theFace,
|
|||||||
TopoDS_Wire anOuterWire =
|
TopoDS_Wire anOuterWire =
|
||||||
theShapeAnalysisAlgo ? ShapeAnalysis::OuterWire( theFace ) : BRepTools::OuterWire( theFace );
|
theShapeAnalysisAlgo ? ShapeAnalysis::OuterWire( theFace ) : BRepTools::OuterWire( theFace );
|
||||||
for ( TopoDS_Iterator wIt (theFace); wIt.More(); wIt.Next() )
|
for ( TopoDS_Iterator wIt (theFace); wIt.More(); wIt.Next() )
|
||||||
|
if ( wIt.Value().ShapeType() == TopAbs_WIRE ) // it can be internal vertex!
|
||||||
|
{
|
||||||
if ( !anOuterWire.IsSame( wIt.Value() ))
|
if ( !anOuterWire.IsSame( wIt.Value() ))
|
||||||
aWireList.push_back( TopoDS::Wire( wIt.Value() ));
|
aWireList.push_back( TopoDS::Wire( wIt.Value() ));
|
||||||
else
|
else
|
||||||
aWireList.push_front( TopoDS::Wire( wIt.Value() ));
|
aWireList.push_front( TopoDS::Wire( wIt.Value() ));
|
||||||
|
}
|
||||||
|
|
||||||
// loop on edges of wires
|
// loop on edges of wires
|
||||||
theNbVertexInWires.clear();
|
theNbVertexInWires.clear();
|
||||||
|
Loading…
Reference in New Issue
Block a user