rubik.py: Library with Rubik's cube abstraction.
solver.py: The main program which finds the shortest path between two positions.
test_solver.py: Unit tests for solver.py. This takes into account all the edge cases.
Visualizer/: Contains the GUI for visualizing the working of rubik's cube.
For visualising the working of rubik's cube or pocket cube solver, follow the steps according to the OS you are using :-
-
On Windows: run the file "rubik_solver_GUI_Win.py" (not "rubik_solver_GUI.py")
Double-click on "rubik_solver_GUI_Win.py" to run.
-
On Linux/Unix: run the file "rubik_solver_GUI.py"
Open terminal, locate the folder containing "rubik_solver_GUI.py" and type "python rubik_solver_GUI.py" to run.
-
Requirement: python2.5 and above
-
The 2x2x2 rubik (Pocket Cube) has the same color scheme with the one from www.rubiks.com:
Front: Red, Left: Green, Right: Blue, Back: Orange, Up: White, Down: Yellow
-
By convention, when entering your colors, make sure the yellow square containing the logo is on the far-right corner of bottom face.