Пример #1
0
    def preencher_Criterio(self):

        try:
            _translate = QtCore.QCoreApplication.translate
            importancia = functions_criterio.capturar_Valor_Matriz()
            x = 0
            for j in range(len(criterio)):
                for i in range(len(criterio)):
                    if i < j:
                        element = QtWidgets.QTableWidgetItem()
                        element.setFlags(QtCore.Qt.ItemIsEnabled)
                        self.tableWidget.setItem(i, j, element)

                        valor = QtWidgets.QTableWidgetItem()
                        valor.setText(
                            _translate("MainWindow", str(importancia[x])))
                        self.tableWidget.setItem(i, j, valor)
                        x += 1

        except:
            warning.MainWindow = QtWidgets.QMainWindow()
            warning.ui = warning.Ui_MainWindow()
            warning.ui.setupUi(
                warning.MainWindow, "    Valor Inválido ou os valores\n"
                "      não estão entre 1/9 e 9")

            warning.MainWindow.show()
            warning.ui.pushButton.clicked.connect(
                functools.partial(warning.MainWindow.close))
Пример #2
0
def cadastrar():
    cadastrar_Objetivo()
    crit = cadastrar_Criterio()
    objetivo = cadastrar_Objetivo()
    ativ = cadastrar_Atividade()

    msg = None
    if len(crit) <= 2 or len(ativ) <= 2:
        msg = "Número de critério ou atividades\n \tinsuficientes"
    elif len(crit) > 15 or len(ativ) > 15:
        msg = "Número de critério ou atividades\n \tmaior que 15"

    if (len(crit) <= 2 or len(crit) > 15) or (len(ativ) <= 2 or len(ativ) > 15):
        warning.MainWindow = QtWidgets.QMainWindow()
        warning.ui = warning.Ui_MainWindow()
        warning.ui.setupUi(warning.MainWindow, msg)

        warning.MainWindow.show()
        warning.ui.pushButton.clicked.connect(functools.partial(warning.MainWindow.close))

    else:
        Janela_2.MainWindow = QtWidgets.QMainWindow()
        Janela_2.ui = Janela_2.Ui_MainWindow()
        Janela_2.ui.setupUi(Janela_2.MainWindow, crit, ativ, objetivo)

        Janela_2.MainWindow.show()

        Janela_2.ui.pushButton.clicked.connect(functools.partial(Janela_2.ui.preencher_Criterio))
        Janela_2.ui.pushButton_2.clicked.connect(functools.partial(Janela_2.ui.central_funcao))
Пример #3
0
    def preencher_Atividades(self):
        try:
            _translate = QtCore.QCoreApplication.translate
            importancia = functions_atividade.capturar_Valor_Matriz()
            x = 0
            for t in range(len(criterio)):
                matriz = self.tabWidget.findChild(QtCore.QObject,
                                                  "tableWidget_" + str(t))
                for j in range(len(atividade)):
                    for i in range(len(atividade)):
                        if i < j:
                            element = QtWidgets.QTableWidgetItem()
                            element.setFlags(QtCore.Qt.ItemIsEnabled)
                            matriz.setItem(i, j, element)

                            valor = QtWidgets.QTableWidgetItem()
                            valor.setText(
                                _translate("MainWindow", str(importancia[x])))
                            matriz.setItem(i, j, valor)
                            x += 1
        except:
            warning.MainWindow = QtWidgets.QMainWindow()
            warning.ui = warning.Ui_MainWindow()
            warning.ui.setupUi(warning.MainWindow)

            warning.MainWindow.show()
            warning.ui.pushButton.clicked.connect(
                functools.partial(warning.MainWindow.close))
Пример #4
0
    def central_funcao(self):
        try:
            valores = functions_criterio.decimal()
            soma = functions_criterio.soma_coluna(valores)
            normal = functions_criterio.normalizar_Matriz(soma, valores)
            eigen = functions_criterio.vetor_eigen(normal)
            lambd = functions_criterio.lambd(eigen, soma)
            ci = functions_criterio.ci(lambd)
            ri = functions_criterio.tabela_valor_ri(len(criterio))
            cr = functions_criterio.cr(ci, ri)


            janela_4.MainWindow = QtWidgets.QMainWindow()
            janela_4.ui = janela_4.Ui_MainWindow()
            janela_4.ui.setupUi(janela_4.MainWindow, criterio, atividade, objetivo, eigen, lambd, ci, cr)
            janela_4.MainWindow.show()

            janela_4.ui.pushButton.clicked.connect(functools.partial(janela_4.ui.preencher_Atividades))
            janela_4.ui.pushButton_2.clicked.connect(functools.partial(janela_4.ui.central_funcao))

        except:
            warning.MainWindow = QtWidgets.QMainWindow()
            warning.ui = warning.Ui_MainWindow()
            warning.ui.setupUi(warning.MainWindow)

            warning.MainWindow.show()
            warning.ui.pushButton.clicked.connect(functools.partial(warning.MainWindow.close))
Пример #5
0
    def central_funcao(self):
        try:
            valores = functions_criterio.decimal()
            soma = functions_criterio.soma_coluna(valores)
            normal = functions_criterio.normalizar_Matriz(soma, valores)
            eigen = functions_criterio.vetor_eigen(normal)
            lambd = functions_criterio.lambd(eigen, soma)
            ci = functions_criterio.ci(lambd)
            ri = functions_criterio.tabela_valor_ri(len(criterio))
            cr = functions_criterio.cr(ci, ri)

            janela_3.MainWindow = QtWidgets.QMainWindow()
            janela_3.ui = janela_3.Ui_MainWindow()
            janela_3.ui.setupUi(janela_3.MainWindow, criterio, atividade,
                                objetivo, eigen, lambd, ci, cr)
            janela_3.MainWindow.show()

            janela_3.ui.pushButton.clicked.connect(
                functools.partial(janela_3.ui.preencher_Atividades))
            janela_3.ui.pushButton_2.clicked.connect(
                functools.partial(janela_3.ui.central_funcao))

        except ValueError as e:
            warning.MainWindow = QtWidgets.QMainWindow()
            warning.ui = warning.Ui_MainWindow()
            warning.ui.setupUi(
                warning.MainWindow, "   Digite apenas números!\n"
                "    ou complete a matriz")

            warning.MainWindow.show()
            warning.ui.pushButton.clicked.connect(
                functools.partial(warning.MainWindow.close))

        except:
            warning.MainWindow = QtWidgets.QMainWindow()
            warning.ui = warning.Ui_MainWindow()
            warning.ui.setupUi(
                warning.MainWindow, "    Valor Inválido ou nulo!\n"
                "1- verifique se preencheu toda\n"
                "a matriz com valores numéricos")

            warning.MainWindow.show()
            warning.ui.pushButton.clicked.connect(
                functools.partial(warning.MainWindow.close))
Пример #6
0
def cadastrar():
    cadastrar_Objetivo()
    crit = cadastrar_Criterio()
    objetivo = cadastrar_Objetivo()
    ativ = cadastrar_Atividade()

    if (len(crit) <= 2 or len(crit) > 15) or (len(ativ) <= 2 or len(ativ) > 15):
        warning.MainWindow = QtWidgets.QMainWindow()
        warning.ui = warning.Ui_MainWindow()
        warning.ui.setupUi(warning.MainWindow)

        warning.MainWindow.show()
        warning.ui.pushButton.clicked.connect(functools.partial(warning.MainWindow.close))

    else:
        Janela_3.MainWindow = QtWidgets.QMainWindow()
        Janela_3.ui = Janela_3.Ui_MainWindow()
        Janela_3.ui.setupUi(Janela_3.MainWindow, crit, ativ, objetivo)

        Janela_3.MainWindow.show()

        Janela_3.ui.pushButton.clicked.connect(functools.partial(Janela_3.ui.preencher_Criterio))
        Janela_3.ui.pushButton_2.clicked.connect(functools.partial(Janela_3.ui.central_funcao))
Пример #7
0
    def central_funcao(self):
        try:
            valores = functions_atividade.decimal()
            soma = functions_atividade.soma_coluna(valores)
            normal = functions_atividade.normalizar_Matriz(soma, valores)
            eigen = functions_atividade.vetor_eigen(normal)
            lambd = functions_atividade.lambd(eigen, soma)
            ci = functions_atividade.ci(lambd)
            ri = functions_atividade.tabela_valor_ri(len(criterio))
            cr = functions_atividade.cr(ci, ri)

            print("criando arquivo")
            aux = 0
            path = os.path.abspath('resultado.txt')
            with open(path, 'w') as file:

                file.write("Objetivo: " + str(_objetivo_))

                file.write("\n\n")

                file.write("Vetor de Eigen da Matriz de Critérios: " +
                           str(_eigen_))

                file.write("\n\n")

                file.write("Auto Valor máximo da Matriz de Critérios: " +
                           str(_lambd_))

                file.write("\n\n")

                file.write("CI da Matriz de Critérios: " + str(_ci_))

                file.write("\n\n")

                file.write("CR da Matriz de Critérios: " + str(_cr_))

                file.write("\n\n")

                for i in range(len(criterio)):
                    file.write(
                        "Vetor de Eigen da Matriz de atividade em relação ao critério "
                        + str(criterio[i]) + ": ")
                    file.write("[")
                    for j in range(len(criterio)):
                        file.write(str(eigen[j + aux]) + ", ")
                    file.write("]\n")
                    aux += len(atividade)

                file.write("\n\n")

                for i in range(len(criterio)):
                    file.write(
                        "Auto valor máximo da Matriz de atividades em relação ao critério "
                        + str(criterio[i]) + ": ")
                    file.write(str(lambd[i]) + "\n")

                file.write("\n\n")

                for i in range(len(criterio)):
                    file.write(
                        "CI da Matriz de atividades em relação ao critério " +
                        str(criterio[i]) + ": ")
                    file.write(str(ci[i]) + "\n")

                file.write("\n\n")

                for i in range(len(criterio)):
                    file.write(
                        "CR da Matriz de atividades em relação ao critério " +
                        str(criterio[i]) + ": ")
                    file.write(str(cr[i]) + "\n")

            finish.MainWindow = QtWidgets.QMainWindow()
            finish.ui = finish.Ui_MainWindow()
            finish.ui.setupUi(finish.MainWindow)
            finish.MainWindow.show()

            finish.ui.pushButton_2.clicked.connect(functools.partial(sys.exit))
            finish.ui.pushButton.clicked.connect(
                functools.partial(functions_criterio.close_multi_windows))
        except:
            warning.MainWindow = QtWidgets.QMainWindow()
            warning.ui = warning.Ui_MainWindow()
            warning.ui.setupUi(warning.MainWindow)

            warning.MainWindow.show()
            warning.ui.pushButton.clicked.connect(
                functools.partial(warning.MainWindow.close))