Salome HOME
bos #20282 EDF 22320 - general compute fails
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_FieldSelectorWdg.cxx
index 91034498099e2bca288b7a9b63f0b97c0eb32f72..ef240287271b1dd44709bb114a44003a78820be3 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2020  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -91,10 +91,6 @@ GetAllFields(const QList< QPair< SMESH::SMESH_IDSource_var, QString > >& meshes,
 {
   myFields = & fields;
   myTree->clear();
-  
-  _PTR(Study) study = SMESH::GetActiveStudyDocument();
-  GEOM::GEOM_Gen_var geomGen = SMESH::GetGEOMGen();
-  GEOM::GEOM_IFieldOperations_wrap fieldOp = geomGen->GetIFieldOperations( study->StudyId() );
 
   for ( int iM = 0; iM < meshes.count(); ++iM )
   {
@@ -110,6 +106,9 @@ GetAllFields(const QList< QPair< SMESH::SMESH_IDSource_var, QString > >& meshes,
         QTreeWidgetItem* meshItem = createItem( myTree, meshes[iM].second, iM );
 
         GEOM::GEOM_Object_var shape = mesh->GetShapeToMesh();
+        GEOM::GEOM_Gen_var  geomGen = SMESH::GetGEOMGen( shape );
+        GEOM::GEOM_IFieldOperations_wrap fieldOp = geomGen->GetIFieldOperations();
+
         fields = fieldOp->GetFields( shape );
         for ( size_t iF = 0; iF < fields->length(); ++iF )
         {