X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_SWIG%2Fsmesh_algorithm.py;h=bc2489436469555d789b449de22a87ed23eb1958;hp=c686068866683f35e374b5b6ad4f59c50fe53dbd;hb=264eeb2edd6977ccf2d2bd88cbb210353f63f7c9;hpb=e5a91d8557f450d46990a3845fa7365d6583820b diff --git a/src/SMESH_SWIG/smesh_algorithm.py b/src/SMESH_SWIG/smesh_algorithm.py index c68606886..bc2489436 100644 --- a/src/SMESH_SWIG/smesh_algorithm.py +++ b/src/SMESH_SWIG/smesh_algorithm.py @@ -70,7 +70,7 @@ class Mesh_Algorithm: # Finds only the hypotheses created in smeshpyD engine. # @return SMESH.SMESH_Hypothesis def FindHypothesis (self, hypname, args, CompareMethod, smeshpyD): - study = smeshpyD.GetCurrentStudy() + study = salome.myStudy if not study: return None #to do: find component by smeshpyD object, not by its data type scomp = study.FindComponent(smeshpyD.ComponentDataType()) @@ -114,7 +114,7 @@ class Mesh_Algorithm: # Finds only the algorithms, which have been created in smeshpyD engine. # @return SMESH.SMESH_Algo def FindAlgorithm (self, algoname, smeshpyD): - study = smeshpyD.GetCurrentStudy() + study = salome.myStudy if not study: return None #to do: find component by smeshpyD object, not by its data type scomp = study.FindComponent(smeshpyD.ComponentDataType()) @@ -183,7 +183,7 @@ class Mesh_Algorithm: ## Private method. def Create(self, mesh, geom, hypo, so="libStdMeshersEngine.so"): if geom is None and mesh.mesh.HasShapeToMesh(): - raise RuntimeError, "Attemp to create " + hypo + " algorithm on None shape" + raise RuntimeError, "Attempt to create " + hypo + " algorithm on None shape" algo = self.FindAlgorithm(hypo, mesh.smeshpyD) if algo is None: algo = mesh.smeshpyD.CreateHypothesis(hypo, so) @@ -195,7 +195,7 @@ class Mesh_Algorithm: def Assign(self, algo, mesh, geom): from salome.smesh.smeshBuilder import AssureGeomPublished, TreatHypoStatus, GetName if geom is None and mesh.mesh.HasShapeToMesh(): - raise RuntimeError, "Attemp to create " + algo + " algorithm on None shape" + raise RuntimeError, "Attempt to create " + algo + " algorithm on None shape" self.mesh = mesh if not geom or geom.IsSame( mesh.geom ): self.geom = mesh.geom @@ -288,6 +288,8 @@ class Mesh_Algorithm: raise TypeError, "ViscousLayers are supported by 3D algorithms only" if not "ViscousLayers" in self.GetCompatibleHypothesis(): raise TypeError, "ViscousLayers are not supported by %s"%self.algo.GetName() + if faces and isinstance( faces, geomBuilder.GEOM._objref_GEOM_Object ): + faces = [ faces ] if faces and isinstance( faces[0], geomBuilder.GEOM._objref_GEOM_Object ): faceIDs = [] for shape in faces: @@ -324,6 +326,8 @@ class Mesh_Algorithm: raise TypeError, "ViscousLayers2D are supported by 2D algorithms only" if not "ViscousLayers2D" in self.GetCompatibleHypothesis(): raise TypeError, "ViscousLayers2D are not supported by %s"%self.algo.GetName() + if edges and not isinstance( edges, list ) and not isinstance( edges, tuple ): + edges = [edges] if edges and isinstance( edges[0], geomBuilder.GEOM._objref_GEOM_Object ): edgeIDs = [] for shape in edges: