Solveur de Rubiks-Cube
Rubik's Cube Solver codé en Python.
Solveur codé par Lucas et Tom Brannan
Pour exécuter le solveur, exécutez le fichier cube.py. L'interface graphique démarrera automatiquement. Si vous obtenez des erreurs, il est possible que tkinter ne soit pas installé. Cela est nécessaire pour exécuter l’interface graphique.
Caractéristiques
Lisez simplement les instructions pour voir certaines des fonctionnalités incluses dans le solveur. Les diverses fonctionnalités incluses sont :
- Brouillages générés par l'utilisateur ou le programme
- La possibilité d'effectuer des mouvements personnalisés
- La possibilité d'appuyer soit sur le bouton de résolution, soit sur chaque étape de la résolution pour la voir se résoudre étape par étape
- La possibilité d'exécuter des simulations avec un nombre de résolutions défini par l'utilisateur (attention, un trop grand nombre pourrait geler le programme)
- Possibilité de copier des brouillages ou des solutions dans le presse-papiers, ainsi que de les visualiser en externe.
- Cliquer sur le cube 2D vous permettra de voir les autres tuiles du bas qui ne sont normalement pas visibles
Diverses commandes
Si vous ne souhaitez pas utiliser l'interface graphique, vous pouvez également simplement saisir des commandes de fonction dans l'interpréteur. Voici quelques-uns des plus utiles :
- print_cube() Imprime le cube au format texte
- scramble() Vous pouvez soit fournir un nombre, soit un brouillage au format chaîne, soit rien pour un brouillage par défaut de 25 coups.
- get_scramble() Imprime le brouillage précédent
- solve() Résoudra le cube
- get_moves() Imprime la solution générée lors de l'utilisation de solve()
- simulation(num) Le nombre fourni est le nombre de résolutions que vous souhaitez simuler. Vous renverra la meilleure solution avec son brouillage, ainsi que la pire solution et son brouillage.
Le Solver lui-même est basé sur une méthode de résolution CFOP (Fridrich). Il résout le Cross, effectue l'étape F2L, effectue une OLL à 2 regards et une PLL à 2 regards. En ce qui concerne la notation, la notation de base utilisée dans le monde du cubing est utilisée, cependant, un mouvement dans le sens inverse des aiguilles d'une montre peut être indiqué soit par une apostrophe (méthode standard), soit par la lettre i (indiquant i pour l'inverse).