Salome HOME
22364: EDF SMESH: Create Mesh dialog box improvement: hide inapplicable algorithms...
authoreap <eap@opencascade.com>
Wed, 12 Mar 2014 11:12:59 +0000 (15:12 +0400)
committereap <eap@opencascade.com>
Wed, 12 Mar 2014 11:12:59 +0000 (15:12 +0400)
   pass toCheckAll=true to IsApplicable() only if a shape is geom group

src/SMESH_SWIG/smeshBuilder.py

index 222e4f9dcfb23434cf9008289cab08e9fb4466f6..262685a4324ed370f9174507adea3bc1170994ff 100644 (file)
@@ -1567,8 +1567,10 @@ class Mesh:
         if self.mesh.HasShapeToMesh():
             hyp_type     = hyp.GetName()
             lib_name     = hyp.GetLibName()
         if self.mesh.HasShapeToMesh():
             hyp_type     = hyp.GetName()
             lib_name     = hyp.GetLibName()
-            isSubMesh    = ( not geom.IsSame( self.mesh.GetShapeToMesh() ))
-            isApplicable = self.smeshpyD.IsApplicable(hyp_type, lib_name, geom, isSubMesh)
+            checkAll    = ( not geom.IsSame( self.mesh.GetShapeToMesh() ))
+            if checkAll and geom:
+                checkAll = geom.GetType() == 37
+            isApplicable = self.smeshpyD.IsApplicable(hyp_type, lib_name, geom, checkAll)
         if isApplicable:
             AssureGeomPublished( self, geom, "shape for %s" % hyp.GetName())
             status = self.mesh.AddHypothesis(geom, hyp)
         if isApplicable:
             AssureGeomPublished( self, geom, "shape for %s" % hyp.GetName())
             status = self.mesh.AddHypothesis(geom, hyp)