def __init__(self, gen_ctrl, campo=None): ''' Inicia as veriáveis e atributos da classe e instancia a interface gráfica params: gen_ctrl -> Generator_Ctrl Instância do controlador de geração de campos que armazena os campos gerados aqui campo -> campo_aleatorio, campo_constante, campo_turbilhao, campo_doublet opcional - campo recebido para edição de seus dados ''' self.funcoes = { 0:self.gera_aleatorio, 1:self.gera_constante, 2:self.gera_doublet, 3:self.gera_fonte, 4:self.gera_turbilhao } self.ui = Set_Creator_View(self) self.ui.showMaximized() self.ctrl = gen_ctrl if campo != None: self.ui.inicia_campos(campo)
class Set_Creator_Ctrl: ''' Controla a interface de criação de conjuntos de dados, ''' def __init__(self, gen_ctrl, campo=None): ''' Inicia as veriáveis e atributos da classe e instancia a interface gráfica params: gen_ctrl -> Generator_Ctrl Instância do controlador de geração de campos que armazena os campos gerados aqui campo -> campo_aleatorio, campo_constante, campo_turbilhao, campo_doublet opcional - campo recebido para edição de seus dados ''' self.funcoes = { 0:self.gera_aleatorio, 1:self.gera_constante, 2:self.gera_doublet, 3:self.gera_fonte, 4:self.gera_turbilhao } self.ui = Set_Creator_View(self) self.ui.showMaximized() self.ctrl = gen_ctrl if campo != None: self.ui.inicia_campos(campo) def gerar_matrizes(self): ''' Gera as matrizes e coloca o campo gerado na lista de campos do Generator_Ctrl ''' self.ctrl.recebe_campo(self.funcoes[self.ui.get_indice_selecionado()]()) def gera_aleatorio(self): ''' Gera um campo aleatório com os parâmetros passados return: campos_aleatorio Campo aleatório gerado ''' n = eval(str(self.ui.get_num_mat())) altura = eval(str(self.ui.get_altura())) largura = eval(str(self.ui.get_largura())) mat = Gerador.aleatorio(n, altura, largura) return campo_aleatorio(n, altura, largura, mat[:]) def gera_constante(self): ''' Gera um campo cosntante com os parâmetros passados return: campo_constante Campos constante gerado ''' n = eval(str(self.ui.get_num_mat())) altura = eval(str(self.ui.get_altura())) largura = eval(str(self.ui.get_largura())) constante = eval(str(self.ui.get_const_1())) angulo = eval(str(self.ui.get_const_2())) mat = Gerador.constante(n, altura, largura, angulo, constante) return campo_constante(n, altura, largura, constante, angulo, mat) def gera_doublet(self): ''' Gera um campo doublet com os parâmetros passados return: campo_doublet Campo Doublet Gerado ''' n = eval(str(self.ui.get_num_mat())) altura = eval(str(self.ui.get_altura())) largura = eval(str(self.ui.get_largura())) magnitude = eval(str(self.ui.get_const_1())) inicio = complex(eval(str(self.ui.get_ini_x())), eval(str(self.ui.get_ini_y()))) mat = Gerador.doublet(n, altura, largura, magnitude, inicio) return campo_doublet(n, altura, largura, inicio, magnitude, mat) def gera_fonte(self): ''' Gera um campo fonte/sumidouro com os parâmetros passados return: campo_fonte Campo Fonte/Sumidouro Gerado ''' n = eval(str(self.ui.get_num_mat())) altura = eval(str(self.ui.get_altura())) largura = eval(str(self.ui.get_largura())) magnitude = eval(str(self.ui.get_const_1())) inicio = complex(eval(str(self.ui.get_ini_x())), eval(str(self.ui.get_ini_y()))) mat = Gerador.sumidouro(n, altura, largura, magnitude, inicio) return campo_fonte(n, altura, largura, inicio, magnitude, mat) def gera_turbilhao(self): ''' Gera um campo fonte/sumidouro com os parâmetros passados return: campo_fonte Campo Turbilhão Gerado ''' n = eval(str(self.ui.get_num_mat())) altura = eval(str(self.ui.get_altura())) largura = eval(str(self.ui.get_largura())) magnitude = eval(str(self.ui.get_const_1())) posicao = eval(str(self.ui.get_const_2())) inicio = complex(eval(str(self.ui.get_ini_x())), eval(str(self.ui.get_ini_y()))) mat = Gerador.turbilhao(n, altura, largura, magnitude, posicao, inicio) return campo_turbilhao(n, altura, largura, inicio, magnitude, posicao, mat) def close_window(self): ''' Fecha a janela do gerador de campos ''' self.ui.close()