コード例 #1
0
ファイル: ButtonFrame.py プロジェクト: Nadjet12/mots_croises
    def play(self):
        '''
        Lance l'algo de resolution de mots croisés
        Si une instance est déja en train de tourner il l'arrete et lance une nouvelle instance
        :return: None
        '''
        self.resetButton.configure(state="normal")
        if self.algo.hasRun:
            self.algo.stop()
            self.raz()
            self.algo = Algo(queue=self.queue,
                             grille=self.algo.grille,
                             traceframe=self.traceFrame,
                             algoName=self.algo.algoName,
                             heuristique=self.algo.heur)
            self.master.master.algo = self.algo
            self.master.algo = self.algo

        self.algo.start()
        self.after(1000, self.process_queue)
        self.master.send_To_Trace(
            "nombre de mot sur la grille :" + str(
                len(self.algo.grille.mots_horizontaux +
                    self.algo.grille.mots_verticaux)) + "\n", "curr")
        self.master.send_To_Trace(
            "nombre de mot dans les Domaines :" +
            str(self.algo.grille.get_Domaines_Sizes()) + "\n", "curr")
コード例 #2
0
    def __init__(self, master, algo=None):

        Frame.__init__(self, master)

        # Options pour l'ouverture/sauvegarde des fichiers
        self.openfileoptions = dict()
        self.openfileoptions['filetypes'] = [('Fichier Mots croisés', '.mc'),
                                             ('Tout les fichiers', '.*')]
        self.openfileoptions['initialfile'] = 'ma_grille.mc'
        #self.openfileoptions['initialdir'] = GRILLE_PATH
        self.openfileoptions['parent'] = master

        # Queue pour les Threads
        self.thread_queue = Queue()

        self.createMenu()

        self.algo = Algo(algoName="AC3")
        self.algo.setQueue(self.thread_queue)
        self.mainFrame = MainFrame(self, self.algo, self.thread_queue)
        self.mainFrame.pack(fill=BOTH, expand=True)
        self.filename = None
コード例 #3
0
	'VAL'

    ]



    for gr in GRILLE:
        for al in ALGO:
            for dic in DICO:
                times = []
                print 'debut algo ' + str(al) + " " + str(dic[1]) + ' Grille :' + str(gr[1])
                for i in range(5):
                    dico = Dico(dic[0])
                    grille = Grille(gr[0])
                    grille.updateDico(dico)
                    algo = Algo(grille=grille, algoName=al, stat=True)
                    start = time.time()
                    algo.start()
                    algo.join(300)
                    elapse = time.time() - start
                    print 'fin ' + str(i+1) + ': ' + str(elapse)
                    times += [elapse]
                fichier = open(PATHSAVE+"temps_" + gr[1] + "_" + al + ".stat", "a")
                fichier.write(dic[1])
                moy = 0
                for  t in times:
                    fichier.write(" "+str(t))
                    moy += t
                print 'moyenne :' + str(moy/5)
                fichier.write("\n")
                fichier.close()