Salome HOME
Merge from V6_3_BR 15/07/2011
authorvsr <vsr@opencascade.com>
Fri, 15 Jul 2011 11:22:33 +0000 (11:22 +0000)
committervsr <vsr@opencascade.com>
Fri, 15 Jul 2011 11:22:33 +0000 (11:22 +0000)
configure.ac
src/GUI/BLSURFPluginGUI_HypothesisCreator.cxx

index a09b108218f868907f52442f31f1da746c80e775..060099d9cd52512933f31dc65a70f34d40566912 100644 (file)
@@ -23,7 +23,7 @@
 # Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com)
 # ---
 #
-AC_INIT([Salome2 Project BLSURFPLUGIN module], [6.3.0], [webmaster.salome@opencascade.com], [SalomeBLSURFPLUGIN])
+AC_INIT([Salome2 Project BLSURFPLUGIN module], [6.3.1], [webmaster.salome@opencascade.com], [SalomeBLSURFPLUGIN])
 AC_CONFIG_AUX_DIR(adm_local/unix/config_files)
 AC_CANONICAL_HOST
 AC_CANONICAL_TARGET
index f7b61f99727793d38a74d6a2cfa0d81e5392a111..8877339a3db2e9919ab254cd94caad6c6c132268 100644 (file)
@@ -72,6 +72,7 @@
 #include "SALOME_LifeCycleCORBA.hxx"
 
 #include <TopoDS_Shape.hxx>
+#include <TopoDS_Iterator.hxx>
 #include <SMESH_Gen_i.hxx>
 #include <boost/shared_ptr.hpp>
 #include <boost/algorithm/string.hpp>
@@ -799,6 +800,7 @@ QFrame* BLSURFPluginGUI_HypothesisCreator::buildFrame()
   SM_ShapeTypes.Add( TopAbs_VERTEX );
   SM_ShapeTypes.Add( TopAbs_EDGE );
   SM_ShapeTypes.Add( TopAbs_FACE );
+  SM_ShapeTypes.Add( TopAbs_COMPOUND );
   
   ATT_ShapeTypes.Add( TopAbs_VERTEX );
   ATT_ShapeTypes.Add( TopAbs_EDGE );
@@ -2505,6 +2507,21 @@ void BLSURFPluginGUI_HypothesisCreator::insertElement(GEOM::GEOM_Object_var anOb
   MESSAGE("entry = "<<entry);
   shapeName = anObject->GetName();
   shapeType = SMESH_Gen_i::GetSMESHGen()->GeomObjectToShape( anObject ).ShapeType();
+  // Group management : the type of entities in the group is stored in the SMPShapeTypeMap
+  // in order to write the size map with the right syntax in StoreParamsToHypo 
+  // (f(t) for edges, f(u,v) for faces ...)
+  if (shapeType == TopAbs_COMPOUND){
+    TopoDS_Shape theShape = SMESH_Gen_i::GetSMESHGen()->GeomObjectToShape( anObject );
+    TopoDS_Shape childShape;
+    TopoDS_Iterator anIt(theShape);
+    for(;anIt.More();anIt.Next()){
+      childShape = anIt.Value();
+      shapeType = childShape.ShapeType();
+      if(!childShape.IsNull()){
+        break;
+      }
+    }
+  }
   mySizeMapTable->setFocus();
   QString shapeEntry;
   shapeEntry = QString::fromStdString(entry);