Salome HOME
0020128: EDF SMESH 926 : Quadratic conversion of BLSURF mesh
authoreap <eap@opencascade.com>
Thu, 18 Jun 2009 12:40:41 +0000 (12:40 +0000)
committereap <eap@opencascade.com>
Thu, 18 Jun 2009 12:40:41 +0000 (12:40 +0000)
  in ConvertToQuadratic()
+  if ( !theForce3d ) {
+    aHelper.SetSubShape(0); // apply to the whole mesh
+    aHelper.FixQuadraticElements();
+  }

src/SMESH/SMESH_MeshEditor.cxx

index 8b32e77a6109ddaee7d3028ad3215f19a7d607a2..898a2f8dc108534db6ba60f87ecc9bbd47872db1 100644 (file)
@@ -6721,6 +6721,7 @@ void SMESH_MeshEditor::ConvertToQuadratic(const bool theForce3d)
         SMESH_subMesh* sm = smIt->next();
         if ( SMESHDS_SubMesh *smDS = sm->GetSubMeshDS() ) {
           aHelper.SetSubShape( sm->GetSubShape() );
+          if ( !theForce3d) aHelper.SetCheckNodePosition(true);
           nbCheckedElems += convertElemToQuadratic(smDS, aHelper, theForce3d);
         }
       }
@@ -6815,6 +6816,10 @@ void SMESH_MeshEditor::ConvertToQuadratic(const bool theForce3d)
       ReplaceElemInGroups(volume, NewVolume, meshDS);
     }
   }
+  if ( !theForce3d ) {
+    aHelper.SetSubShape(0); // apply to the whole mesh
+    aHelper.FixQuadraticElements();
+  }
 }
 
 //=======================================================================