Пример #1
0
 def OnChangeContour(self, groupe, nom):
     """ modifie la valeur et les couleurs des contours : valeur[0] : min
     [1] : max, [2] nb contours, [3] decimales, [4] : 'lin' log' ou 'fix',
     si [4]:fix, alors [0] est la serie des valeurs de contours """
     valeur = self.getGlist(groupe, nom, 'valeur')
     col = self.getGlist(groupe, nom, 'col')
     dlgContour = MyDialogs.MyDialogContour(self, "Contours", valeur, col)
     if dlgContour.ShowModal() == wx.ID_OK:
         val = dlgContour.GetStrings()
         log = dlgContour.log.GetValue()
         # creer le vecteur de couleurs
         c = dlgContour.coul
         col = [(c[0].Red(), c[0].Green(), c[0].Blue()),
                (c[1].Red(), c[1].Green(), c[1].Blue()),
                (c[2].Red(), c[2].Green(), c[2].Blue())]
     else:
         return
     valeur = val[:5]
     valeur[4] = 'lin'
     if len(val[-1]) > 5:
         valeur[0] = eval(val[-1])
         valeur[4] = 'fix'
     elif log:
         valeur[4] = 'log'
     self.setGlist(groupe, nom, 'valeur',
                   valeur)  #nb le Glist de RT3d est le mm que Reaction
     self.setGlist(groupe, nom, 'col', col)
     nom2 = nom
     if groupe == '6.rt3d': nom2 = 'rt' + nom
     elif groupe == '7.pht3d': nom2 = 'pht' + nom
     elif groupe == '8.reactionIsot': nom2 = nom + 'Isot'
     self.parent.Visu.changeContour(valeur=valeur, typC=nom2, col=col)
     self.parent.Visu.drawContour(nom2, True)
Пример #2
0
 def OnChange(self, evt):
     """ change les caracteristiques d'un affichage"""
     item = self.FindWindowById(evt.GetId())
     n = item.GetName()
     #getName ou getLabelText
     [groupe, nom, tag] = n.split('_')
     item2 = self.FindWindowByName(groupe + '_' + nom + '_L')
     if item2 != None: nom = item2.GetStringSelection()
     col = self.model.getGlistParm(groupe, nom, 'col')
     valeur = self.model.getGlistParm(groupe, nom, 'valeur')
     if nom in self.change.keys():  # cas autres que contours
         if col == None: col = self.change[nom][0][1]
         if valeur == None and len(self.change[nom]) > 1:
             valeur = self.change[nom][1][1]
         lst0 = self.change[nom]
         lst0[0][1] = col
         if nom in ['Vitesse', 'Particules']: lst0[1][1] = valeur
         dlg = MyDialogs.MyGenericCtrl(self, nom, lst0)
         if dlg.ShowModal() == wx.ID_OK:
             lst1 = zip(*dlg.GetValues())[1]
             col = lst1[0]
             if len(lst1) > 1: valeur = lst1[1]
         else: return
     else:  # cas contour
         dlgContour = MyDialogs.MyDialogContour(self.gui, "Contours",
                                                valeur, col)
         if dlgContour.ShowModal() == wx.ID_OK:
             valeur = dlgContour.GetStrings()
             # creer le vecteur de couleurs
             c = dlgContour.coul
             col = [(c[0].Red(), c[0].Green(), c[0].Blue()),
                    (c[1].Red(), c[1].Green(), c[1].Blue()),
                    (c[2].Red(), c[2].Green(), c[2].Blue()),
                    int(c[3])]
         else:
             return
     self.model.setGlistParm(groupe, nom, 'valeur', valeur)
     self.model.setGlistParm(groupe, nom, 'col', col)
     self.onTickBox(groupe, nom, tag, True)
     self.visu.changeObject(groupe, nom, valeur, col)