-
Notifications
You must be signed in to change notification settings - Fork 791
Expand file tree
/
Copy pathlab_05.py
More file actions
131 lines (90 loc) · 3.56 KB
/
lab_05.py
File metadata and controls
131 lines (90 loc) · 3.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
import arcade
def draw_section_outlines():
# Draw squares on bottom
arcade.draw_rectangle_outline(150, 150, 300, 300, arcade.color.BLACK)
arcade.draw_rectangle_outline(450, 150, 300, 300, arcade.color.BLACK)
arcade.draw_rectangle_outline(750, 150, 300, 300, arcade.color.BLACK)
arcade.draw_rectangle_outline(1050, 150, 300, 300, arcade.color.BLACK)
# Draw squares on top
arcade.draw_rectangle_outline(150, 450, 300, 300, arcade.color.BLACK)
arcade.draw_rectangle_outline(450, 450, 300, 300, arcade.color.BLACK)
arcade.draw_rectangle_outline(750, 450, 300, 300, arcade.color.BLACK)
arcade.draw_rectangle_outline(1050, 450, 300, 300, arcade.color.BLACK)
def draw_section_1():
for row in range(30):
for column in range(30):
x = 5 + column * 10 # Instead of zero, calculate the proper x location using 'column'
y = 5 + row * 10 # Instead of zero, calculate the proper y location using 'row'
arcade.draw_rectangle_filled(x, y, 5, 5, arcade.color.WHITE)
def draw_section_2():
for row in range(30):
for column in range(30):
x = 305 + column * 10
y = 295 - row * 10
if column % 2 == 0:
arcade.draw_rectangle_filled(x,y,5,5,arcade.color.WHITE)
else:
arcade.draw_rectangle_filled(x,y,5,5,arcade.color.BLACK)
def draw_section_3():
for column in range(30):
for row in range(30):
x = 605 + column * 10
y = 295 - row * 10
if row % 2 == 0:
arcade.draw_rectangle_filled(x,y,5,5,arcade.color.WHITE)
else:
arcade.draw_rectangle_filled(x,y,5,5,arcade.color.BLACK)
def draw_section_4():
for column in range(30):
for row in range(30):
x = 905 + column * 10
y = 295 - row * 10
if row % 2 == 0:
arcade.draw_rectangle_filled(x,y,5,5,arcade.color.BLACK)
else:
arcade.draw_rectangle_filled(x,y,5,5,arcade.color.BLACK)
# Use the modulus operator and just one 'if' statement to select the color.
def draw_section_5():
for column in range(30):
for row in range(column, 30):
x = 5 + (29 - column) * 10
y = 595 - row * 10
arcade.draw_rectangle_filled(x, y, 5, 5, arcade.color.WHITE)
# Do NOT use 'if' statements to complete 5-8. Manipulate the loops instead.
def draw_section_6():
for column in range(30):
for row in range(column, 30):
x = 305 + column * 10
y = 595 - row * 10
arcade.draw_rectangle_filled(x,y,5,5,arcade.color.WHITE)
def draw_section_7():
for row in range(30):
for column in range(30 - row):
x = 605 + column * 10
y = 595 - row * 10
arcade.draw_rectangle_filled(x,y,5,5,arcade.color.WHITE)
def draw_section_8():
for row in range(30):
for column in range(row, 30):
x = 905 + column * 10
y = 595 - row * 10
arcade.draw_rectangle_filled(x, y, 5, 5, arcade.color.WHITE)
def main():
# Create a window
arcade.open_window(1200, 600, "Lab 05 - Loopy Lab")
arcade.set_background_color(arcade.color.AIR_FORCE_BLUE)
arcade.start_render()
# Draw the outlines for the sections
draw_section_outlines()
# Draw the sections
draw_section_1()
draw_section_2()
draw_section_3()
draw_section_4()
draw_section_5()
draw_section_6()
draw_section_7()
draw_section_8()
arcade.finish_render()
arcade.run()
main()