# Private functions
# -----------------
+NO_NAME = "NoName"
+
def GetName(obj):
ior = salome.orb.object_to_string(obj)
sobj = salome.myStudy.FindObjectIOR(ior)
- attr = sobj.FindAttribute("AttributeName")[1]
- return attr.Value()
+ if sobj is None:
+ return NO_NAME
+ else:
+ attr = sobj.FindAttribute("AttributeName")[1]
+ return attr.Value()
def SetName(obj, name):
ior = salome.orb.object_to_string(obj)
name = GetName(piece)
else:
self.geom = geom
- name = geompy.SubShapeName(geom, piece)
- geompy.addToStudyInFather(piece, geom, name)
+ name = GetName(geom)
+ if name==NO_NAME:
+ name = geompy.SubShapeName(geom, piece)
+ geompy.addToStudyInFather(piece, geom, name)
self.subm = mesh.mesh.GetSubMesh(geom, hypo)
algo = smesh.CreateHypothesis(hypo, so)
hyp = self.Hypothesis("NumberOfSegments", [n])
else:
hyp = self.Hypothesis("NumberOfSegments", [n,s])
+ hyp.SetDistrType( 1 )
hyp.SetScaleFactor(s)
hyp.SetNumberOfSegments(n)
return hyp
"""
b = smesh.Compute(self.mesh, self.geom)
if salome.sg.hasDesktop():
+ smeshgui = salome.ImportComponentGUI("SMESH")
+ smeshgui.Init(salome.myStudyId)
+ smeshgui.SetMeshIcon( salome.ObjectToID( self.mesh ), b )
salome.sg.updateObjBrowser(1)
return b
type = SMESH.FACE
elif tgeo == "SOLID":
type = SMESH.VOLUME
+ elif tgeo == "SHELL":
+ type = SMESH.VOLUME
elif tgeo == "COMPOUND":
tgeo = geompy.GetType(grp)
if tgeo == geompy.ShapeType["VERTEX"]: