X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_SWIG%2Fbatchmode_smesh.py;h=4964c8b0cc7ef8edb6e67a55ab93b8f79e8e4441;hp=6ee609495ce65a818ecd42c3740c83d37822e05d;hb=5fec7e4eb742072b134c5631c80bd3cbadc92681;hpb=3973ceea250d2a077cdb5a798eb7c6151fa9c568 diff --git a/src/SMESH_SWIG/batchmode_smesh.py b/src/SMESH_SWIG/batchmode_smesh.py index 6ee609495..4964c8b0c 100644 --- a/src/SMESH_SWIG/batchmode_smesh.py +++ b/src/SMESH_SWIG/batchmode_smesh.py @@ -1,15 +1,14 @@ -#============================================================================== -# File : batchmode_smesh.py -# Created : Fri Nov 15 13:51:00 2002 -# Author : Oksana TCHEBANOVA -# Project : SALOME -# Copyright : OPEN CASCADE 2002 +# Copyright (C) 2003 CEA/DEN, EDF R&D +# +# +# +# File : batchmode_smesh.py +# Author : Oksana TCHEBANOVA +# Module : SMESH # $Header$ -#============================================================================== - -#-------------------------------------------------------------------------- from batchmode_salome import * +from batchmode_geompy import ShapeType import SMESH #-------------------------------------------------------------------------- @@ -21,190 +20,180 @@ myStudyBuilder = myStudy.NewBuilder() if myStudyBuilder is None: raise RuntimeError, " Null myStudyBuilder" -father = myStudy.FindComponent("MESH") +father = myStudy.FindComponent("SMESH") if father is None: - father = myStudyBuilder.NewComponent("MESH") - A1 = myStudyBuilder.FindOrCreateAttribute(father, "AttributeName"); - FName = A1._narrow(SALOMEDS.AttributeName) -# FName.SetValue("Mesh") - - Comp = modulecatalog.GetComponent( "SMESH" ) - FName.SetValue( Comp._get_componentusername() ) - - A2 = myStudyBuilder.FindOrCreateAttribute(father, "AttributePixMap"); - aPixmap = A2._narrow(SALOMEDS.AttributePixMap); - aPixmap.SetPixMap( "ICON_OBJBROWSER_Mesh" ); + father = myStudyBuilder.NewComponent("SMESH") + FName = myStudyBuilder.FindOrCreateAttribute(father, "AttributeName") + Comp = modulecatalog.GetComponent("SMESH") + FName.SetValue(Comp._get_componentusername()) + aPixmap = myStudyBuilder.FindOrCreateAttribute(father, "AttributePixMap") + aPixmap.SetPixMap("ICON_OBJBROWSER_Mesh") myStudyBuilder.DefineComponentInstance(father,smesh) mySComponentMesh = father._narrow(SALOMEDS.SComponent) -Tag_HypothesisRoot = 1; -Tag_AlgorithmsRoot = 2; +Tag_HypothesisRoot = 1 +Tag_AlgorithmsRoot = 2 -Tag_RefOnShape = 1; -Tag_RefOnAppliedHypothesis = 2; -Tag_RefOnAppliedAlgorithms = 3; +Tag_RefOnShape = 1 +Tag_RefOnAppliedHypothesis = 2 +Tag_RefOnAppliedAlgorithms = 3 -Tag_SubMeshOnVertex = 4; -Tag_SubMeshOnEdge = 5; -Tag_SubMeshOnFace = 6; -Tag_SubMeshOnSolid = 7; -Tag_SubMeshOnCompound = 8; +Tag_SubMeshOnVertex = 4 +Tag_SubMeshOnEdge = 5 +Tag_SubMeshOnFace = 6 +Tag_SubMeshOnSolid = 7 +Tag_SubMeshOnCompound = 8 Tag = {"HypothesisRoot":1,"AlgorithmsRoot":2,"RefOnShape":1,"RefOnAppliedHypothesis":2,"RefOnAppliedAlgorithms":3,"SubMeshOnVertex":4,"SubMeshOnEdge":5,"SubMeshOnFace":6,"SubMeshOnSolid":7,"SubMeshOnCompound":8} -# -- enumeration -- -ShapeTypeCompSolid = 1 -ShapeTypeSolid = 2 -ShapeTypeShell = 3 -ShapeTypeFace = 4 -ShapeTypeWire = 5 -ShapeTypeEdge = 6 -ShapeTypeVertex = 7 - -# -- enumeration ShapeType as a dictionary -- -ShapeType = {"CompSolid":1, "Solid":2, "Shell":3, "Face":4, "Wire":5, "Edge":6, "Vertex":7} - #------------------------------------------------------------ def Init(): pass #------------------------------------------------------------ def AddNewMesh(IOR): + # VSR: added temporarily - objects are published automatically by the engine + aSO = myStudy.FindObjectIOR( IOR ) + if aSO is not None: + return aSO.GetID() + # VSR ###################################################################### + res,HypothesisRoot = mySComponentMesh.FindSubObject ( Tag_HypothesisRoot ) if HypothesisRoot is None or res == 0: HypothesisRoot = myStudyBuilder.NewObjectToTag(mySComponentMesh, Tag_HypothesisRoot) - anAttr = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributeName") - aName = anAttr._narrow(SALOMEDS.AttributeName) - aName.SetValue("Hypothesis Definition") - anAttr = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributePixMap") - aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap) + aName = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributeName") + aName.SetValue("Hypotheses") + aPixmap = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributePixMap") aPixmap.SetPixMap( "mesh_tree_hypo.png" ) - anAttr = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributeSelectable") - aSelAttr = anAttr._narrow(SALOMEDS.AttributeSelectable) - aSelAttr.SetSelectable(0); + aSelAttr = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributeSelectable") + aSelAttr.SetSelectable(0) res, AlgorithmsRoot = mySComponentMesh.FindSubObject (Tag_AlgorithmsRoot) if AlgorithmsRoot is None or res == 0: AlgorithmsRoot = myStudyBuilder.NewObjectToTag (mySComponentMesh, Tag_AlgorithmsRoot) - anAttr = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributeName") - aName = anAttr._narrow(SALOMEDS.AttributeName) - aName.SetValue("Algorithms Definition"); - anAttr = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributePixMap"); - aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap); - aPixmap.SetPixMap( "mesh_tree_algo.png" ); - anAttr = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributeSelectable"); - aSelAttr = anAttr._narrow(SALOMEDS.AttributeSelectable); - aSelAttr.SetSelectable(0); + aName = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributeName") + aName.SetValue("Algorithms") + aPixmap = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributePixMap") + aPixmap.SetPixMap( "mesh_tree_algo.png" ) + aSelAttr = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributeSelectable") + aSelAttr.SetSelectable(0) HypothesisRoot = HypothesisRoot._narrow(SALOMEDS.SObject) newMesh = myStudyBuilder.NewObject(mySComponentMesh) - newMesh = newMesh._narrow(SALOMEDS.SObject) - anAttr = myStudyBuilder.FindOrCreateAttribute(newMesh, "AttributePixMap") - aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap) + aPixmap = myStudyBuilder.FindOrCreateAttribute(newMesh, "AttributePixMap") aPixmap.SetPixMap( "mesh_tree_mesh.png" ) - anAttr = myStudyBuilder.FindOrCreateAttribute(newMesh, "AttributeIOR") - anIOR = anAttr._narrow(SALOMEDS.AttributeIOR) + anIOR = myStudyBuilder.FindOrCreateAttribute(newMesh, "AttributeIOR") anIOR.SetValue(IOR) return newMesh.GetID() #------------------------------------------------------------ def AddNewHypothesis(IOR): + # VSR: added temporarily - objects are published automatically by the engine + aSO = myStudy.FindObjectIOR( IOR ) + if aSO is not None: + return aSO.GetID() + # VSR ###################################################################### + res, HypothesisRoot = mySComponentMesh.FindSubObject (Tag_HypothesisRoot) if HypothesisRoot is None or res == 0: HypothesisRoot = myStudyBuilder.NewObjectToTag (mySComponentMesh, Tag_HypothesisRoot) - anAttr = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributeName"); - aName = anAttr._narrow(SALOMEDS.AttributeName); - aName.SetValue("Hypothesis Definition"); - anAttr = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributeSelectable"); - aSelAttr = anAttr._narrow(SALOMEDS.AttributeSelectable); - aSelAttr.SetSelectable(0); - anAttr = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributePixMap"); - aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap); - aPixmap.SetPixMap( "mesh_tree_hypo.png" ); + aName = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributeName") + aName.SetValue("Hypotheses") + aSelAttr = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributeSelectable") + aSelAttr.SetSelectable(0) + aPixmap = myStudyBuilder.FindOrCreateAttribute(HypothesisRoot, "AttributePixMap") + aPixmap.SetPixMap( "mesh_tree_hypo.png" ) # Add New Hypothesis newHypo = myStudyBuilder.NewObject(HypothesisRoot) - newHypo = newHypo._narrow(SALOMEDS.SObject) - anAttr = myStudyBuilder.FindOrCreateAttribute(newHypo, "AttributePixMap") - aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap) + aPixmap = myStudyBuilder.FindOrCreateAttribute(newHypo, "AttributePixMap") H = orb.string_to_object(IOR) - H = H._narrow( SMESH.SMESH_Hypothesis ); - aType = H.GetName(); - aPixmap.SetPixMap( "mesh_tree_hypo.png_" + aType ); - anAttr = myStudyBuilder.FindOrCreateAttribute(newHypo, "AttributeIOR"); - anIOR = anAttr._narrow(SALOMEDS.AttributeIOR); - anIOR.SetValue(IOR); - return newHypo.GetID(); + aType = H.GetName() + aPixmap.SetPixMap( "mesh_tree_hypo.png_" + aType ) + anIOR = myStudyBuilder.FindOrCreateAttribute(newHypo, "AttributeIOR") + anIOR.SetValue(IOR) + return newHypo.GetID() #------------------------------------------------------------ def AddNewAlgorithms(IOR): + # VSR: added temporarily - objects are published automatically by the engine + aSO = myStudy.FindObjectIOR( IOR ) + if aSO is not None: + return aSO.GetID() + # VSR ###################################################################### + res, AlgorithmsRoot = mySComponentMesh.FindSubObject (Tag_AlgorithmsRoot) if AlgorithmsRoot is None or res == 0: AlgorithmsRoot = myStudyBuilde.NewObjectToTag (mySComponentMesh, Tag_AlgorithmsRoot) - anAttr = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributeName") - aName = anAttr._narrow(SALOMEDS.AttributeName); - aName.SetValue("Algorithms Definition"); - anAttr = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributeSelectable") - aSelAttr = anAttr._narrow(SALOMEDS.AttributeSelectable); - aSelAttr.SetSelectable(0); - anAttr = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributePixMap"); - aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap); - aPixmap.SetPixMap( "mesh_tree_algo.png" ); + aName = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributeName") + aName.SetValue("Algorithms") + aSelAttr = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributeSelectable") + aSelAttr.SetSelectable(0) + aPixmap = myStudyBuilder.FindOrCreateAttribute(AlgorithmsRoot, "AttributePixMap") + aPixmap.SetPixMap( "mesh_tree_algo.png" ) # Add New Algorithms newHypo = myStudyBuilder.NewObject(AlgorithmsRoot) - newHypo = newHypo._narrow(SALOMEDS.SObject) - anAttr = myStudyBuilder.FindOrCreateAttribute(newHypo, "AttributePixMap"); - aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap); + aPixmap = myStudyBuilder.FindOrCreateAttribute(newHypo, "AttributePixMap") + aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap) H = orb.string_to_object(IOR) - H = H._narrow( SMESH.SMESH_Hypothesis); aType = H.GetName(); #QString in fact - aPixmap.SetPixMap( "mesh_tree_algo.png_" + aType ); - anAttr = myStudyBuilder.FindOrCreateAttribute(newHypo, "AttributeIOR"); - anIOR = anAttr._narrow(SALOMEDS.AttributeIOR); - anIOR.SetValue(IOR); - return newHypo.GetID(); + aPixmap.SetPixMap( "mesh_tree_algo.png_" + aType ) + anIOR = myStudyBuilder.FindOrCreateAttribute(newHypo, "AttributeIOR") + anIOR.SetValue(IOR) + return newHypo.GetID() #------------------------------------------------------------ def SetShape(ShapeEntry, MeshEntry): - SO_MorSM = myStudy.FindObjectID( MeshEntry ) - SO_MorSM = SO_MorSM._narrow(SALOMEDS.SObject) - SO_GeomShape = myStudy.FindObjectID( ShapeEntry ); - SO_GeomShape = SO_GeomShape._narrow(SALOMEDS.SObject) + SO_GeomShape = myStudy.FindObjectID( ShapeEntry ) if SO_MorSM is not None and SO_GeomShape is not None : - SO = myStudyBuilder.NewObjectToTag (SO_MorSM, Tag_RefOnShape); - SO = SO._narrow(SALOMEDS.SObject) - myStudyBuilder.Addreference (SO,SO_GeomShape); - + # VSR: added temporarily - shape reference is published automatically by the engine + res, Ref = SO_MorSM.FindSubObject( Tag_RefOnShape ) + if res == 1 : + return + # VSR ###################################################################### + + SO = myStudyBuilder.NewObjectToTag (SO_MorSM, Tag_RefOnShape) + myStudyBuilder.Addreference (SO,SO_GeomShape) + #------------------------------------------------------------ def SetHypothesis(Mesh_Or_SubMesh_Entry, Hypothesis_Entry): - SO_MorSM = myStudy.FindObjectID( Mesh_Or_SubMesh_Entry ); - SO_Hypothesis = myStudy.FindObjectID( Hypothesis_Entry ); + SO_MorSM = myStudy.FindObjectID( Mesh_Or_SubMesh_Entry ) + SO_Hypothesis = myStudy.FindObjectID( Hypothesis_Entry ) if SO_MorSM is not None and SO_Hypothesis is not None : #Find or Create Applied Hypothesis root res, AHR = SO_MorSM.FindSubObject (Tag_RefOnAppliedHypothesis) if AHR is None or res == 0: - AHR = myStudyBuilder.NewObjectToTag (SO_MorSM, Tag_RefOnAppliedHypothesis); - anAttr = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributeName"); - aName = anAttr._narrow(SALOMEDS.AttributeName); - aName.SetValue("Applied Hypothesis"); - anAttr = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributeSelectable"); - aSelAttr = anAttr._narrow(SALOMEDS.AttributeSelectable); - aSelAttr.SetSelectable(0); - anAttr = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributePixMap"); - aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap); - aPixmap.SetPixMap( "mesh_tree_hypo.png" ); - - SO = myStudyBuilder.NewObject(AHR); - SO = SO._narrow(SALOMEDS.SObject) - myStudyBuilder.Addreference (SO,SO_Hypothesis); + AHR = myStudyBuilder.NewObjectToTag (SO_MorSM, Tag_RefOnAppliedHypothesis) + aName = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributeName") + + # The same name as in SMESH_Mesh_i::AddHypothesis() ################## + aName.SetValue("Applied hypotheses") + + aSelAttr = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributeSelectable") + aSelAttr.SetSelectable(0) + aPixmap = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributePixMap") + aPixmap.SetPixMap( "mesh_tree_hypo.png" ) + + # VSR: added temporarily - reference to applied hypothesis is published automatically by the engine + else : + it = myStudy.NewChildIterator(AHR) + while it.More() : + res, Ref = it.Value().ReferencedObject() + if res and Ref is not None and Ref.GetID() == Hypothesis_Entry : + return + it.Next() + # VSR ###################################################################### + + SO = myStudyBuilder.NewObject(AHR) + myStudyBuilder.Addreference (SO,SO_Hypothesis) #------------------------------------------------------------ def SetAlgorithms(Mesh_Or_SubMesh_Entry, Algorithms_Entry): @@ -212,91 +201,104 @@ def SetAlgorithms(Mesh_Or_SubMesh_Entry, Algorithms_Entry): SO_Algorithms = myStudy.FindObjectID( Algorithms_Entry ) if SO_MorSM != None and SO_Algorithms != None : #Find or Create Applied Algorithms root - res, AHR = SO_MorSM.FindSubObject (Tag_RefOnAppliedAlgorithms); + res, AHR = SO_MorSM.FindSubObject (Tag_RefOnAppliedAlgorithms) if AHR is None or res == 0: - AHR = myStudyBuilder.NewObjectToTag (SO_MorSM, Tag_RefOnAppliedAlgorithms); - anAttr = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributeName"); - aName = anAttr._narrow(SALOMEDS.AttributeName); - aName.SetValue("Applied Algorithm"); - anAttr = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributeSelectable"); - aSelAttr = anAttr._narrow(SALOMEDS.AttributeSelectable); - aSelAttr.SetSelectable(0); - anAttr = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributePixMap"); - aPixmap = anAttr._narrow(SALOMEDS.AttributePixMap); - aPixmap.SetPixMap( "mesh_tree_algo.png" ); - - SO = myStudyBuilder.NewObject(AHR); - myStudyBuilder.Addreference (SO,SO_Algorithms); + AHR = myStudyBuilder.NewObjectToTag (SO_MorSM, Tag_RefOnAppliedAlgorithms) + aName = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributeName") + + # The same name as in SMESH_Mesh_i::AddHypothesis() ################## + aName.SetValue("Applied algorithms") + + aSelAttr = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributeSelectable") + aSelAttr.SetSelectable(0) + aPixmap = myStudyBuilder.FindOrCreateAttribute(AHR, "AttributePixMap") + aPixmap.SetPixMap( "mesh_tree_algo.png" ) + + # VSR: added temporarily - reference to applied hypothesis is published automatically by the engine + else : + it = myStudy.NewChildIterator(AHR) + while it.More() : + res, Ref = it.Value().ReferencedObject() + if res and Ref is not None and Ref.GetID() == Algorithms_Entry : + return + it.Next() + # VSR ###################################################################### + + SO = myStudyBuilder.NewObject(AHR) + myStudyBuilder.Addreference (SO,SO_Algorithms) #------------------------------------------------------------ def UnSetHypothesis( Applied_Hypothesis_Entry ): - SO_Applied_Hypothesis = myStudy.FindObjectID( Applied_Hypothesis_Entry ); + SO_Applied_Hypothesis = myStudy.FindObjectID( Applied_Hypothesis_Entry ) if SO_Applied_Hypothesis : - myStudyBuilder.RemoveObject(SO_Applied_Hypothesis); + myStudyBuilder.RemoveObject(SO_Applied_Hypothesis) #------------------------------------------------------------ def AddSubMesh ( SO_Mesh_Entry, SM_IOR, ST): + # VSR: added temporarily - objects are published automatically by the engine + aSO = myStudy.FindObjectIOR( SM_IOR ) + if aSO is not None: + return aSO.GetID() + # VSR ###################################################################### + SO_Mesh = myStudy.FindObjectID( SO_Mesh_Entry ) if ( SO_Mesh ) : - if ST == ShapeTypeCompSolid : - Tag_Shape = Tag_SubMeshOnSolid; - Name = "SubMeshes On Solid"; - elif ST == ShapeTypeFace : - Tag_Shape = Tag_SubMeshOnFace; - Name = "SubMeshes On Face"; - elif ST == ShapeTypeEdge : - Tag_Shape = Tag_SubMeshOnEdge; - Name = "SubMeshes On Edge"; - elif ST == ShapeTypeVertex : - Tag_Shape = Tag_SubMeshOnVertex; - Name = "SubMeshes On Vertex"; + if ST == ShapeType["COMPSOLID"] : + Tag_Shape = Tag_SubMeshOnSolid + Name = "SubMeshes on Solid" + elif ST == ShapeType["FACE"] : + Tag_Shape = Tag_SubMeshOnFace + Name = "SubMeshes on Face" + elif ST == ShapeType["EDGE"] : + Tag_Shape = Tag_SubMeshOnEdge + Name = "SubMeshes on Edge" + elif ST == ShapeType["VERTEX"] : + Tag_Shape = Tag_SubMeshOnVertex + Name = "SubMeshes on Vertex" else : - Tag_Shape = Tag_SubMeshOnCompound; - Name = "SubMeshes On Compound"; + Tag_Shape = Tag_SubMeshOnCompound + Name = "SubMeshes on Compound" res, SubmeshesRoot = SO_Mesh.FindSubObject (Tag_Shape) if SubmeshesRoot is None or res == 0: - SubmeshesRoot = myStudyBuilder.NewObjectToTag (SO_Mesh, Tag_Shape); - anAttr = myStudyBuilder.FindOrCreateAttribute(SubmeshesRoot, "AttributeName"); - - aName = anAttr._narrow(SALOMEDS.AttributeName); - aName.SetValue(Name); - anAttr = myStudyBuilder.FindOrCreateAttribute(SubmeshesRoot, "AttributeSelectable"); - aSelAttr = anAttr._narrow(SALOMEDS.AttributeSelectable); - aSelAttr.SetSelectable(0); + SubmeshesRoot = myStudyBuilder.NewObjectToTag (SO_Mesh, Tag_Shape) + aName = myStudyBuilder.FindOrCreateAttribute(SubmeshesRoot, "AttributeName") + aName.SetValue(Name) + aSelAttr = myStudyBuilder.FindOrCreateAttribute(SubmeshesRoot, "AttributeSelectable") + aSelAttr.SetSelectable(0) - SO = myStudyBuilder.NewObject (SubmeshesRoot); - SO = SO._narrow(SALOMEDS.SObject) - anAttr = myStudyBuilder.FindOrCreateAttribute(SO, "AttributeIOR"); - anIOR = anAttr._narrow(SALOMEDS.AttributeIOR); - anIOR.SetValue(SM_IOR); - return SO.GetID(); - - return None; + SO = myStudyBuilder.NewObject (SubmeshesRoot) + anIOR = myStudyBuilder.FindOrCreateAttribute(SO, "AttributeIOR") + anIOR.SetValue(SM_IOR) + return SO.GetID() + + return None #------------------------------------------------------------ def AddSubMeshOnShape (Mesh_Entry, GeomShape_Entry, SM_IOR, ST) : - SO_GeomShape = myStudy.FindObjectID( GeomShape_Entry ); - if SO_GeomShape != None : - SM_Entry = AddSubMesh (Mesh_Entry,SM_IOR,ST); - SO_SM = myStudy.FindObjectID( SM_Entry ); - - if SO_SM != None : - SetShape (GeomShape_Entry, SM_Entry); - return SO_SM.GetID(); - - return None; + # VSR: added temporarily - objects are published automatically by the engine + aSO = myStudy.FindObjectIOR( SM_IOR ) + if aSO is not None: + return aSO.GetID() + # VSR ###################################################################### + SO_GeomShape = myStudy.FindObjectID( GeomShape_Entry ) + if SO_GeomShape != None : + SM_Entry = AddSubMesh (Mesh_Entry,SM_IOR,ST) + SO_SM = myStudy.FindObjectID( SM_Entry ) + + if SO_SM != None : + SetShape (GeomShape_Entry, SM_Entry) + return SM_Entry + + return None #------------------------------------------------------------ def SetName(Entry, Name): - SO = myStudy.FindObjectID( Entry ); + SO = myStudy.FindObjectID( Entry ) if SO != None : - anAttr = myStudyBuilder.FindOrCreateAttribute(SO, "AttributeName"); - aName = anAttr._narrow(SALOMEDS.AttributeName); - aName.SetValue(Name); - - + aName = myStudyBuilder.FindOrCreateAttribute(SO, "AttributeName") + aName.SetValue(Name)