int nbDegen = 0;
list<TopoDS_Edge>::iterator edge = theEdges.begin();
- TopoDS_Iterator vExp;
for ( int index = 0; edge != theEdges.end(); ++index, ++edge )
{
int i = theIsForward ? index : nbEdges-index-1;
}
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 ));
}
{
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()
{