- // invalidate
- if ( invaE )
- {
- if ( invaE == edge ) {
- tgtXYZ.Set( edge->_nodes.back() );
- prevXYZ = & edge->PrevCheckPos();
- }
- _EdgesOnShape* eos = data.GetShapeEdges( invaE );
- invaE->InvalidateStep( invaE->NbSteps(), *eos, /*updLen=*/true );
- invaE->Block( data );
- invaE->Set( _LayerEdge::MARKED );
- if ( eos->ShapeType() == TopAbs_VERTEX )
- {
- // re-smooth on analytical EDGEs
- PShapeIteratorPtr eIt = helper.GetAncestors( eos->_shape, *_mesh, TopAbs_EDGE );
- while ( const TopoDS_Shape* e = eIt->next() )
- if ( _EdgesOnShape* eoe = data.GetShapeEdges( *e ))
- if ( eoe->_edgeSmoother && eoe->_edgeSmoother->isAnalytic() )
- {
- TopoDS_Face F; Handle(ShapeAnalysis_Surface) surface;
- if ( eoe->SWOLType() == TopAbs_FACE ) {
- F = TopoDS::Face( eoe->_sWOL );
- surface = helper.GetSurface( F );
- }
- eoe->_edgeSmoother->Perform( data, surface, F, helper );
- }
- }
- }
- } // loop on edge->_simplices
+ if ( eos->ShapeType() == TopAbs_VERTEX )
+ {
+ // re-smooth on analytical EDGEs
+ PShapeIteratorPtr eIt = helper.GetAncestors( eos->_shape, *_mesh, TopAbs_EDGE );
+ while ( const TopoDS_Shape* e = eIt->next() )
+ if ( _EdgesOnShape* eoe = data.GetShapeEdges( *e ))
+ if ( eoe->_edgeSmoother && eoe->_edgeSmoother->isAnalytic() )
+ {
+ TopoDS_Face F; Handle(ShapeAnalysis_Surface) surface;
+ if ( eoe->SWOLType() == TopAbs_FACE ) {
+ F = TopoDS::Face( eoe->_sWOL );
+ surface = helper.GetSurface( F );
+ }
+ eoe->_edgeSmoother->Perform( data, surface, F, helper );
+ }
+
+ }