Skip to content

Commit 8a367ec

Browse files
authored
Add files via upload
1 parent 8215128 commit 8a367ec

File tree

5 files changed

+529
-0
lines changed

5 files changed

+529
-0
lines changed

cube.py

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
import numpy as np
2+
3+
white = [
4+
["w","w","w"],
5+
["w","w","w"],
6+
["w","w","w"]
7+
]
8+
white = np.array(white)
9+
10+
yellow = [
11+
["y","y","y"],
12+
["y","y","y"],
13+
["y","y","y"]
14+
]
15+
yellow = np.array(yellow)
16+
17+
green = [
18+
["g","g","g"],
19+
["g","g","g"],
20+
["g","g","g"]
21+
]
22+
green = np.array(green)
23+
24+
blue = [
25+
["b","b","b"],
26+
["b","b","b"],
27+
["b","b","b"]
28+
]
29+
blue = np.array(blue)
30+
31+
red = [
32+
["r","r","r"],
33+
["r","r","r"],
34+
["r","r","r"]
35+
]
36+
red = np.array(red)
37+
38+
orange = [
39+
["o","o","o"],
40+
["o","o","o"],
41+
["o","o","o"]
42+
]
43+
orange = np.array(orange)

main.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
from tkinter import *
2+
from tkinter import ttk
3+
import solver
4+
5+
if __name__ == "__main__":
6+
window = Tk()
7+
window.title("Rubik Cube")
8+
window.geometry("1366x768")
9+
tabctrl = ttk.Notebook(window)
10+
tabA = ttk.Frame(tabctrl)
11+
tabB = ttk.Frame(tabctrl)
12+
solver.main(tabA)
13+
x = Frame(tabB,width = 950, height = 670)
14+
x.place(relx=0.5, rely=0.5,anchor = "center")
15+
tabctrl.add(tabA,text = "Solver")
16+
tabctrl.pack()
17+
window.mainloop()

moves.py

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
import cube
2+
3+
def R():
4+
cube.red = cube.red[::-1]
5+
cube.red = cube.red.transpose()
6+
7+
tempg = [cube.green[0][2],cube.green[1][2],cube.green[2][2]]
8+
tempw = [cube.white[0][2],cube.white[1][2],cube.white[2][2]]
9+
tempb = [cube.blue[2][0],cube.blue[1][0],cube.blue[0][0]]
10+
tempy = [cube.yellow[0][2],cube.yellow[1][2],cube.yellow[2][2]]
11+
12+
tempw,tempb,tempy,tempg = tempg,tempw,tempb,tempy
13+
14+
cube.green[0][2],cube.green[1][2],cube.green[2][2] = tempg[0],tempg[1],tempg[2]
15+
cube.white[0][2],cube.white[1][2],cube.white[2][2] = tempw[0],tempw[1],tempw[2]
16+
cube.blue[2][0],cube.blue[1][0],cube.blue[0][0] = tempb[0],tempb[1],tempb[2]
17+
cube.yellow[0][2],cube.yellow[1][2],cube.yellow[2][2] = tempy[0],tempy[1],tempy[2]
18+
19+
def L():
20+
cube.orange = cube.orange[::-1]
21+
cube.orange = cube.orange.transpose()
22+
23+
tempg = [cube.green[0][0],cube.green[1][0],cube.green[2][0]]
24+
tempw = [cube.white[0][0],cube.white[1][0],cube.white[2][0]]
25+
tempb = [cube.blue[2][2],cube.blue[1][2],cube.blue[0][2]]
26+
tempy = [cube.yellow[0][0],cube.yellow[1][0],cube.yellow[2][0]]
27+
28+
tempw,tempb,tempy,tempg = tempb,tempy,tempg,tempw
29+
30+
cube.green[0][0],cube.green[1][0],cube.green[2][0] = tempg[0],tempg[1],tempg[2]
31+
cube.white[0][0],cube.white[1][0],cube.white[2][0] = tempw[0],tempw[1],tempw[2]
32+
cube.blue[2][2],cube.blue[1][2],cube.blue[0][2] = tempb[0],tempb[1],tempb[2]
33+
cube.yellow[0][0],cube.yellow[1][0],cube.yellow[2][0] = tempy[0],tempy[1],tempy[2]
34+
35+
def U():
36+
cube.white = cube.white[::-1]
37+
cube.white = cube.white.transpose()
38+
39+
tempg = [cube.green[0][0],cube.green[0][1],cube.green[0][2]]
40+
tempo = [cube.orange[0][0],cube.orange[0][1],cube.orange[0][2]]
41+
tempb = [cube.blue[0][0],cube.blue[0][1],cube.blue[0][2]]
42+
tempr = [cube.red[0][0],cube.red[0][1],cube.red[0][2]]
43+
44+
tempg,tempo,tempb,tempr = tempr,tempg,tempo,tempb
45+
46+
cube.green[0][0],cube.green[0][1],cube.green[0][2] = tempg[0],tempg[1],tempg[2]
47+
cube.orange[0][0],cube.orange[0][1],cube.orange[0][2] = tempo[0],tempo[1],tempo[2]
48+
cube.blue[0][0],cube.blue[0][1],cube.blue[0][2] = tempb[0],tempb[1],tempb[2]
49+
cube.red[0][0],cube.red[0][1],cube.red[0][2] = tempr[0],tempr[1],tempr[2]
50+
51+
def D():
52+
cube.yellow = cube.yellow[::-1]
53+
cube.yellow = cube.yellow.transpose()
54+
55+
tempg = [cube.green[2][0],cube.green[2][1],cube.green[2][2]]
56+
tempo = [cube.orange[2][0],cube.orange[2][1],cube.orange[2][2]]
57+
tempb = [cube.blue[2][0],cube.blue[2][1],cube.blue[2][2]]
58+
tempr = [cube.red[2][0],cube.red[2][1],cube.red[2][2]]
59+
60+
tempg,tempo,tempb,tempr = tempo,tempb,tempr,tempg
61+
62+
cube.green[2][0],cube.green[2][1],cube.green[2][2] = tempg[0],tempg[1],tempg[2]
63+
cube.orange[2][0],cube.orange[2][1],cube.orange[2][2] = tempo[0],tempo[1],tempo[2]
64+
cube.blue[2][0],cube.blue[2][1],cube.blue[2][2] = tempb[0],tempb[1],tempb[2]
65+
cube.red[2][0],cube.red[2][1],cube.red[2][2] = tempr[0],tempr[1],tempr[2]
66+
67+
def F():
68+
cube.green = cube.green[::-1]
69+
cube.green = cube.green.transpose()
70+
71+
tempw = [cube.white[2][0],cube.white[2][1],cube.white[2][2]]
72+
tempo = [cube.orange[2][2],cube.orange[1][2],cube.orange[0][2]]
73+
tempy = [cube.yellow[0][0],cube.yellow[0][1],cube.yellow[0][2]]
74+
tempr = [cube.red[0][0],cube.red[1][0],cube.red[2][0]]
75+
76+
tempw,tempo,tempy,tempr = tempo,tempy,tempr,tempw
77+
78+
cube.white[2][0],cube.white[2][1],cube.white[2][2] = tempw[0],tempw[1],tempw[2]
79+
cube.orange[0][2],cube.orange[1][2],cube.orange[2][2] = tempo[0],tempo[1],tempo[2]
80+
cube.yellow[0][2],cube.yellow[0][1],cube.yellow[0][0] = tempy[0],tempy[1],tempy[2]
81+
cube.red[0][0],cube.red[1][0],cube.red[2][0] = tempr[0],tempr[1],tempr[2]
82+
83+
def B():
84+
cube.blue = cube.blue[::-1]
85+
cube.blue = cube.blue.transpose()
86+
87+
tempw = [cube.white[0][0],cube.white[0][1],cube.white[0][2]]
88+
tempo = [cube.orange[0][0],cube.orange[1][0],cube.orange[2][0]]
89+
tempy = [cube.yellow[2][2],cube.yellow[2][1],cube.yellow[2][0]]
90+
tempr = [cube.red[0][2],cube.red[1][2],cube.red[2][2]]
91+
92+
tempw,tempo,tempy,tempr = tempr,tempw,tempo,tempy
93+
94+
cube.white[0][0],cube.white[0][1],cube.white[0][2] = tempw[0],tempw[1],tempw[2]
95+
cube.orange[2][0],cube.orange[1][0],cube.orange[0][0] = tempo[0],tempo[1],tempo[2]
96+
cube.yellow[2][0],cube.yellow[2][1],cube.yellow[2][2] = tempy[0],tempy[1],tempy[2]
97+
cube.red[0][2],cube.red[1][2],cube.red[2][2] = tempr[0],tempr[1],tempr[2]
98+
99+
def r():
100+
for i in range(3):
101+
R() #right
102+
103+
def l():
104+
for i in range(3):
105+
L() #left
106+
107+
def u():
108+
for i in range(3):
109+
U() #upper
110+
111+
def d():
112+
for i in range(3):
113+
D() #down
114+
115+
def f():
116+
for i in range(3):
117+
F() #front
118+
119+
def b():
120+
for i in range(3):
121+
B() #back
122+
123+
def R2():
124+
for i in range(2):
125+
R() #two times right
126+
127+
def L2():
128+
for i in range(2):
129+
L() #two times left
130+
131+
def U2():
132+
for i in range(2):
133+
U() #two times up
134+
135+
def D2():
136+
for i in range(2):
137+
D() #two times down
138+
139+
def F2():
140+
for i in range(2):
141+
F() #two times front
142+
143+
def B2():
144+
for i in range(2):
145+
B() #two times back

0 commit comments

Comments
 (0)