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)
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)