Mit dem Ergebnis / Programmierstil bin ich aber selber total unzufrieden.
Ich möchte es halt unbedingt hinbekommen, dass die Spielfläche zeilenweise erstellt wird. Mein Code erstellt quasi zuerst Zeile 1..3..5 usw, bevor dieser dann anschließend Zeilen 2..4..6 aufbaut.
Das ist einfach ein totales durcheinander ...
Aber guckt einmal selber und vielleicht habt Ihr ja ne Idee :
Code: Alles auswählen
from Tkinter import *
from math import *
from random import *
master = Tk()
spiel = Canvas(master, width=1024, height=768)
spiel.pack()
laenge = 20
x1 = 25
y1 = 15
x2 = x1 + laenge
y2 = y1
x3 = x2 + (laenge/2.0)
y3 = y2 + ((laenge * sqrt(3)/2))
x4 = x2
y4 = (sqrt(3) * laenge) + y2
x5 = x1
y5 = y4
x6 = x1 - (laenge / 2.0)
y6 = y3
for feld in range(1,42,2):
for feld in range(17):
spiel.create_polygon(x1,y1,x2,y2,x3,y3,x4,y4,x5,y5,x6,y6,outline="black",fill="green")
x1 = (x3 - x2) + x3 + laenge
x2 = x1 + laenge
x3 = x2 + (laenge/2.0)
x4 = x2
x5 = x1
x6 = x1 - (laenge / 2.0)
x1 = 25
y1 = y1 + (y4 - y2)
x2 = x1 + laenge
y2 = y1
x3 = x2 + (laenge/2.0)
y3 = y2 + ((laenge * sqrt(3)/2))
x4 = x2
y4 = (sqrt(3) * laenge) + y2
x5 = x1
y5 = y4
x6 = x1 - (laenge / 2.0)
y6 = y3
x1 = 55
y1 = 27.3205080757 + 5
x2 = x1 + laenge
y2 = y1
x3 = x2 + (laenge/2.0)
y3 = y2 + ((laenge * sqrt(3)/2))
x4 = x2
y4 = (sqrt(3) * laenge) + y2
x5 = x1
y5 = y4
x6 = x1 - (laenge / 2.0)
y6 = y3
for feld in range(2,43,2):
for feld in range(16):
spiel.create_polygon(x1,y1,x2,y2,x3,y3,x4,y4,x5,y5,x6,y6,outline="black",fill="green")
x1 = (x3 - x2) + x3 + laenge
x2 = x1 + laenge
x3 = x2 + (laenge/2.0)
x4 = x2
x5 = x1
x6 = x1 - (laenge / 2.0)
x1 = 55
y1 = y1 + (y4 - y2)
x2 = x1 + laenge
y2 = y1
x3 = x2 + (laenge/2.0)
y3 = y2 + ((laenge * sqrt(3)/2))
x4 = x2
y4 = (sqrt(3) * laenge) + y2
x5 = x1
y5 = y4
x6 = x1 - (laenge / 2.0)
y6 = y3
Gute Nacht#
Kai
master.mainloop()
print x1,y1
print x2,y2
print x3,y3
print x4,y4
print x5,y5
print x6,y6