From: bourcier <> Date: Wed, 9 May 2007 10:01:00 +0000 (+0000) Subject: Lors de l'affichage d'un groupe de mailles depuis Eficas, on n'affiche la boite de... X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=5f593bcb07e5b0115d1f3cc4ce7f6de1f5eeb724;p=modules%2Feficas.git Lors de l'affichage d'un groupe de mailles depuis Eficas, on n'affiche la boite de sélection de maillage que lorsque le groupes de mailles est présent dans plus d'un maillage. --- diff --git a/src/EFICASGUI/eficasSalome.py b/src/EFICASGUI/eficasSalome.py index 8cce7693..746b2bbb 100644 --- a/src/EFICASGUI/eficasSalome.py +++ b/src/EFICASGUI/eficasSalome.py @@ -661,36 +661,44 @@ class MyEficas( Tkinter.Toplevel, eficas.EFICAS ): # liste des groupes de maille de nom meshGroupName listSO = studyManager.palStudy._myStudy.FindObjectByName(meshGroupName, "SMESH") - for SObjet in listSO: - groupEntry = SObjet.GetID() - meshGroupEntries += [groupEntry] + print "liste des groupes de maille de nom %s: "%(meshGroupName), listSO - # choix d'un maillage - if not self.workingMesh.has_key(currentjdcID): # aucun maillage de défini par défaut encore - #selMeshEntry = "0:1:3:5" #CS_pbruno todo : choix maillage + test si c un maillage - selMeshEntry, keep = self.__selectWorkingMesh(meshGroupEntries) - if keep: - self.workingMesh[currentjdcID] = selMeshEntry - else: # déja un de défini par défaut - selMeshEntry = self.workingMesh[currentjdcID] - - # le groupe de maille est il ds ce maillage? - lselMeshEntry = len(selMeshEntry) - for groupEntry in meshGroupEntries: - if selMeshEntry == groupEntry[0:lselMeshEntry]: - selMeshGroupEntry = groupEntry - break + if len(listSO)>0: + for SObjet in listSO: + groupEntry = SObjet.GetID() + meshGroupEntries += [groupEntry] + + if len(meshGroupEntries)>1: - # si oui, on l'affiche ds la vue VTK - if selMeshGroupEntry: - #CS_pbruno: marche QUE si le module SMESH est activé - myComponent = salome.lcc.FindOrLoadComponent("FactoryServer", "SMESH") - SCom = studyManager.palStudy._myStudy.FindComponent("SMESH") - studyManager.palStudy._myBuilder.LoadWith( SCom , myComponent ) - sg.CreateAndDisplayActor(selMeshGroupEntry) - salome.sg.Display(selMeshGroupEntry) - salome.sg.FitAll() - ok = True + # choix d'un maillage + if not self.workingMesh.has_key(currentjdcID): # aucun maillage de défini par défaut encore + #selMeshEntry = "0:1:3:5" #CS_pbruno todo : choix maillage + test si c un maillage + selMeshEntry, keep = self.__selectWorkingMesh(meshGroupEntries) + if keep: + self.workingMesh[currentjdcID] = selMeshEntry + else: # déja un de défini par défaut + selMeshEntry = self.workingMesh[currentjdcID] + + # le groupe de maille est il ds ce maillage? + lselMeshEntry = len(selMeshEntry) + for groupEntry in meshGroupEntries: + if selMeshEntry == groupEntry[0:lselMeshEntry]: + selMeshGroupEntry = groupEntry + break + + else: + selMeshGroupEntry = meshGroupEntries[0] + + # on affiche le groupe ds la vue VTK + if selMeshGroupEntry: + #CS_pbruno: marche QUE si le module SMESH est activé + myComponent = salome.lcc.FindOrLoadComponent("FactoryServer", "SMESH") + SCom = studyManager.palStudy._myStudy.FindComponent("SMESH") + studyManager.palStudy._myBuilder.LoadWith( SCom , myComponent ) + sg.CreateAndDisplayActor(selMeshGroupEntry) + salome.sg.Display(selMeshGroupEntry) + salome.sg.FitAll() + ok = True except: msgError = msgErrorDisplayMeshGroup logger.debug(50*'=')