X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FStdMeshers%2FStdMeshers_FaceSide.cxx;h=377a79c5d2e907bc4de64ea09ab44d69624eb17d;hp=3fd0305636b9a9c3b8208d154a12aca4055c249d;hb=256994070c8e15b6785935722a7d06e6a49c8035;hpb=0e017d4c87d670c01e72c0b4858ffcb9e47aa9ba diff --git a/src/StdMeshers/StdMeshers_FaceSide.cxx b/src/StdMeshers/StdMeshers_FaceSide.cxx index 3fd030563..377a79c5d 100644 --- a/src/StdMeshers/StdMeshers_FaceSide.cxx +++ b/src/StdMeshers/StdMeshers_FaceSide.cxx @@ -113,7 +113,6 @@ StdMeshers_FaceSide::StdMeshers_FaceSide(const TopoDS_Face& theFace, int nbDegen = 0; list::iterator edge = theEdges.begin(); - TopoDS_Iterator vExp; for ( int index = 0; edge != theEdges.end(); ++index, ++edge ) { int i = theIsForward ? index : nbEdges-index-1; @@ -150,7 +149,7 @@ StdMeshers_FaceSide::StdMeshers_FaceSide(const TopoDS_Face& theFace, } else { - const TopoDS_Vertex& V = TopoDS::Vertex( vExp.Value() ); + const TopoDS_Vertex& V = SMESH_MesherHelper::IthVertex( 0, *edge ); Handle(Geom_Curve) C3d = new Geom_Line( BRep_Tool::Pnt( V ), gp::DX() ); myC3dAdaptor[i].Load( C3d, 0, 0.5 * BRep_Tool::Tolerance( V )); } @@ -717,7 +716,7 @@ bool StdMeshers_FaceSide::GetEdgeNodes(size_t i, { if ( mesh->HasModificationsToDiscard() ) // check nb of nodes on the EDGE sub-mesh { - int iQuad = sm->GetElements()->next()->IsQuadratic(); + int iQuad = sm->NbElements() ? sm->GetElements()->next()->IsQuadratic() : 0; int nbExpect = sm->NbElements() - 1 + iQuad * sm->NbElements(); if ( nbExpect != sm->NbNodes() ) // some nodes are moved from the EDGE by MergeNodes() {