From: eap Date: Mon, 2 Jul 2012 13:25:53 +0000 (+0000) Subject: 0021381: EDF 1984 BLSURFPLUGIN: Sub-mesh with BLSURF X-Git-Tag: V6_6_0a1~280 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=2ee680b1165039991827ed1c8605836ff976b069;p=modules%2Fsmesh.git 0021381: EDF 1984 BLSURFPLUGIN: Sub-mesh with BLSURF Enable IsQuadraticSubMesh() work with compounds --- diff --git a/src/SMESH/SMESH_MesherHelper.cxx b/src/SMESH/SMESH_MesherHelper.cxx index 7bf4b4d76..8a1682b8e 100644 --- a/src/SMESH/SMESH_MesherHelper.cxx +++ b/src/SMESH/SMESH_MesherHelper.cxx @@ -120,8 +120,15 @@ bool SMESH_MesherHelper::IsQuadraticSubMesh(const TopoDS_Shape& aSh) mySeamShapeIds.clear(); myDegenShapeIds.clear(); TopAbs_ShapeEnum subType( aSh.ShapeType()==TopAbs_FACE ? TopAbs_EDGE : TopAbs_FACE ); + if ( aSh.ShapeType()==TopAbs_COMPOUND ) + { + TopoDS_Iterator subIt( aSh ); + if ( subIt.More() ) + subType = ( subIt.Value().ShapeType()==TopAbs_FACE ) ? TopAbs_EDGE : TopAbs_FACE; + } SMDSAbs_ElementType elemType( subType==TopAbs_FACE ? SMDSAbs_Face : SMDSAbs_Edge ); + int nbOldLinks = myTLinkNodeMap.size(); if ( !myMesh->HasShapeToMesh() )