-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathObjects.py
207 lines (181 loc) · 11.7 KB
/
Objects.py
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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
import random, Math3D
from Math3D import *
from MainScene import MainScene as MS
import Texturing
from PIL import Image
class Cube():
def make():
x=random.randint(-8,8)
y=random.randint(-8,8)
z=random.randint(-8,8)
xr=random.randint(0,360)
yr=random.randint(0,360)
zr=random.randint(0,360)
vertices=[[-1.0, -1.0, -1.0, 255, 100, 100, x, y, z, "PLANE5.png", 1, xr, yr, zr],
[1.0, -1.0, -1.0, 255, 100, 100, x, y, z, "PLANE5.png", 1, xr, yr, zr],
[1.0, 1.0, -1.0, 255, 100, 100, x, y, z, "PLANE5.png", 1, xr, yr, zr],
[1.0, 1.0, -1.0, 255, 100, 100, x, y, z, "PLANE5.png", 3, xr, yr, zr],
[-1.0, 1.0, -1.0, 255, 100, 100, x, y, z, "PLANE5.png", 3, xr, yr, zr],
[-1.0, -1.0, -1.0, 255, 100, 100, x, y, z, "PLANE5.png", 3, xr, yr, zr],
[-1.0, -1.0, 1.0, 255, 255, 100, x, y, z, "Tex.png", 1, xr, yr, zr],
[1.0, -1.0, 1.0, 255, 255, 100, x, y, z, "Tex.png", 1, xr, yr, zr],
[1.0, 1.0, 1.0, 255, 255, 100, x, y, z, "Tex.png", 1, xr, yr, zr],
[1.0, 1.0, 1.0, 255, 255, 100, x, y, z, "Tex.png", 3, xr, yr, zr],
[-1.0, 1.0, 1.0, 255, 255, 100, x, y, z, "Tex.png", 3, xr, yr, zr],
[-1.0, -1.0, 1.0, 255, 255, 100, x, y, z, "Tex.png", 3, xr, yr, zr],
[-1.0, 1.0, 1.0, 255, 100, 255, x, y, z, "PLANE5.png", 1, xr, yr, zr],
[-1.0, 1.0, -1.0, 255, 100, 255, x, y, z, "PLANE5.png", 1, xr, yr, zr],
[-1.0, -1.0, -1.0, 255, 100, 255, x, y, z, "PLANE5.png", 1, xr, yr, zr],
[-1.0, -1.0, -1.0, 255, 100, 255, x, y, z, "PLANE5.png", 3, xr, yr, zr],
[-1.0, -1.0, 1.0, 255, 100, 255, x, y, z, "PLANE5.png", 3, xr, yr, zr],
[-1.0, 1.0, 1.0, 255, 100, 255, x, y, z, "PLANE5.png", 3, xr, yr, zr],
[1.0, 1.0, 1.0, 100, 255, 100, x, y, z, "Tex.png", 2, xr, yr, zr],
[1.0, 1.0, -1.0, 100, 255, 100, x, y, z, "Tex.png", 2, xr, yr, zr],
[1.0, -1.0, -1.0, 100, 255, 100, x, y, z, "Tex.png", 2, xr, yr, zr],
[1.0, -1.0, -1.0, 100, 255, 100, x, y, z, "Tex.png", 4, xr, yr, zr],
[1.0, -1.0, 1.0, 100, 255, 100, x, y, z, "Tex.png", 4, xr, yr, zr],
[1.0, 1.0, 1.0, 100, 255, 100, x, y, z, "Tex.png", 4, xr, yr, zr],
[-1.0, -1.0, -1.0, 100, 255, 255, x, y, z, "PLANE5.png", 1, xr, yr, zr],
[1.0, -1.0, -1.0, 100, 255, 255, x, y, z, "PLANE5.png", 1, xr, yr, zr],
[1.0, -1.0, 1.0, 100, 255, 255, x, y, z, "PLANE5.png", 1, xr, yr, zr],
[1.0, -1.0, 1.0, 100, 255, 255, x, y, z, "PLANE5.png", 3, xr, yr, zr],
[-1.0, -1.0, 1.0, 100, 255, 255, x, y, z, "PLANE5.png", 3, xr, yr, zr],
[-1.0, -1.0, -1.0, 100, 255, 255, x, y, z, "PLANE5.png", 3, xr, yr, zr],
[-1.0, 1.0, -1.0, 100, 0, 100, x, y, z, "Tex.png", 2, xr, yr, zr],
[1.0, 1.0, -1.0, 100, 0, 100, x, y, z, "Tex.png", 2, xr, yr, zr],
[1.0, 1.0, 1.0, 100, 0, 100, x, y, z, "Tex.png", 2, xr, yr, zr],
[1.0, 1.0, 1.0, 100, 0, 100, x, y, z, "Tex.png", 4, xr, yr, zr],
[-1.0, 1.0, 1.0, 100, 0, 100, x, y, z, "Tex.png", 4, xr, yr, zr],
[-1.0, 1.0, -1.0, 100, 0, 100, x, y, z, "Tex.png", 4, xr, yr, zr]]
MS.vertices.append(vertices)
with Image.open("Tex.bmp") as tex:
tex=tex.copy()
with Image.open("PLANE5.bmp") as plane5:
plane5=plane5.copy()
Texturing.textures["Tex.png"]=tex.convert(mode="RGBA")
Texturing.textures["PLANE5.png"]=plane5.convert(mode="RGBA")
class Tank():
def make():
x=random.randint(-10,10)
y=0#random.randint(-10,10)
z=random.randint(-10,10)
# Rx=
# Ry=
# Rz=
vertices=[[1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
[-1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 0.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, -2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[1.0, 2.0, 2.0, 0, 100, 0, x, y, z],
[1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[1.0, -2.0, 0.0, 0, 100, 0, x, y, z],
[-1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, 2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, 2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[1.0, 2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, 2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, -2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, -2.0, 0.0, 0, 100, 0, x, y, z],
[-1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
[1.0, 2.0, 2.0, 0, 100, 0, x, y, z],
[1.0, 2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, 2.0, 2.0, 0, 100, 0, x, y, z],
[-1.0, 2.0, 0.0, 0, 100, 0, x, y, z],
#turret
[-1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[-1.0, 1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[-1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[-1.0, -1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[1.0, -1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, -1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, 1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[-1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[-1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[-1.0, -1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, -1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, -1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[1.0, -1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, -1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, -1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[-1.0, 1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, -1.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, 1.0+0.5, 0.0, 0, 100, 0, x, y, z],
[-1.0, 1.0+0.5, -1.0, 0, 100, 0, x, y, z],
#gun
[-0.25, -1.0+2.5, -0.75, 50, 100, 50, x, y, z],
[0.25, -1.0+2.5, -0.75, 50, 100, 50, x, y, z],
[0.25, 1.0+2.5, -0.75, 50, 100, 50, x, y, z],
[0.25, 1.0+2.5, -0.75, 255, 100, 100, x, y, z],
[-0.25, 1.0+2.5, -0.75, 255, 100, 100, x, y, z],
[-0.25, -1.0+2.5, -0.75, 50, 100, 50, x, y, z],
[-0.25, -1.0+2.5, -0.25, 50, 100, 50, x, y, z],
[0.25, -1.0+2.5, -0.25, 50, 100, 50, x, y, z],
[0.25, 1.0+2.5, -0.25, 50, 100, 50, x, y, z],
[0.25, 1.0+2.5, -0.25, 255, 255, 100, x, y, z],
[-0.25, 1.0+2.5, -0.25, 255, 255, 100, x, y, z],
[-0.25, -1.0+2.5, -0.25, 50, 100, 50, x, y, z],
[-0.25, 1.0+2.5, -0.25, 255, 100, 255, x, y, z],
[-0.25, 1.0+2.5, -0.75, 255, 100, 255, x, y, z],
[-0.25, -1.0+2.5, -0.75, 50, 100, 50, x, y, z],
[-0.25, -1.0+2.5, -0.75, 255, 100, 255, x, y, z],
[-0.25, -1.0+2.5, -0.25, 255, 100, 255, x, y, z],
[-0.25, 1.0+2.5, -0.25, 50, 100, 50, x, y, z],
[0.25, 1.0+2.5, -0.25, 100, 255, 100, x, y, z],
[0.25, 1.0+2.5, -0.75, 100, 255, 100, x, y, z],
[0.25, -1.0+2.5, -0.75, 50, 100, 50, x, y, z],
[0.25, -1.0+2.5, -0.75, 100, 255, 100, x, y, z],
[0.25, -1.0+2.5, -0.25, 100, 255, 100, x, y, z],
[0.25, 1.0+2.5, -0.25, 50, 100, 50, x, y, z],
[-0.25, -1.0+2.5, -0.75, 50, 50, 50, x, y, z],
[0.25, -1.0+2.5, -0.75, 100, 255, 25, x, y, z],
[0.25, -1.0+2.5, -0.25, 50, 50, 50, x, y, z],
[0.25, -1.0+2.5, -0.25, 100, 255, 255, x, y, z],
[-0.25, -1.0+2.5, -0.25, 100, 255, 255, x, y, z],
[-0.25, -1.0+2.5, -0.75, 50, 50, 50, x, y, z],
[-0.25, 1.0+2.5, -0.75, 100, 0, 100, x, y, z],
[0.25, 1.0+2.5, -0.75, 100, 0, 100, x, y, z],
[0.25, 1.0+2.5, -0.25, 50, 50, 50, x, y, z],
[0.25, 1.0+2.5, -0.25, 100, 0, 100, x, y, z],
[-0.25, 1.0+2.5, -0.25, 100, 0, 100, x, y, z],
[-0.25, 1.0+2.5, -0.75, 50, 50, 50, x, y, z]]
for vert in vertices:
vert.append(0)
vert.append(0)
vert.append(90.0)
vert.append(0.0)
vert.append(0.0)
MS.vertices.append(vertices)