1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- #Linda Napieralski
- #Andre Giesbrecht
- #Alexa Tschernitschek
- #Modul importieren
- import Tkinter as tk
- import turtle
- import time
- #Groesse des Fensters
- BREITE= 600 #Hauptfensterbreite
- HOEHE = 400 #Hauptfensterhoehe
- #global
- #global
- class Roboter(object):
- def __init__(self, Hauptfenster, canvas, BREITE, HOEHE, Roboter_width, Farbe, Geschwindigkeit, start_x, start_y, tag):
- self.width = BREITE #Einfuegen Hauptfensterbreite in Klasse
- self.height = HOEHE #Einfuegen Hauptfensterhoehe in Klasse
- self.canvas = canvas
- self.Geschwindigkeit = Geschwindigkeit
- self.Richtung_x = 0.5 #Geschwindigkeit in x_Richtung
- self.Richtung_y = 0.5 #Geschwindigkeit in y_Richtung
- self.tag = tag #Neuzeichnen
- #Roboter erstellen
- self.canvas.create_oval(start_x, start_y, start_x + Roboter_width, start_y + Roboter_width, fill=Farbe, tag=tag)
- #Funktion "Fahren" des Roboters
- def maehen(self):
- self.canvas.move(self.tag, self.Richtung_x, self.Richtung_y)
- position = self.canvas.coords(self.tag)
- if position[0] == 0:
- self.Richtung_x = 0.5 #Geschwindigkeit nach Kollision
- if position[1] == 0:
- self.Richtung_y = 0.5
- if position[2] == self.width:
- self.Richtung_x = -0.5
- if position[3] == self.height:
- self.Richtung_y = -0.5
- self.canvas.after(self.Geschwindigkeit, self.maehen)
- x0= position[0]
- y0= position[1]
- x1= position[2]
- y1= position[3]
- self.canvas.create_oval(x0, y0,x1, y1, fill="red") #Markierung des Maehweges mit Neuzeichnung des Roboters
- # def maehen(self):
- # line1= self.canvas.create_line(self.Richtung_x,self.Richtung_y ,width=1, fill="#000")
- # self.canvas.move(self.tag, self.Richtung_x, self.Richtung_y)
- # position = self.canvas.coords(self.tag)
- # if position[0] == 0:
- # self.Richtung_x = 0.5 #Geschwindigkeit nach Kollision
- # if position[1] == 0:
- # self.Richtung_y = 0.5
- # if position[2] == self.width:
- # self.Richtung_x = -0.5
- # if position[3] == self.height:
- # self.Richtung_y = -0.5
- # self.canvas.after(self.Geschwindigkeit, self.fahren)
- #Zeitmessung Maehvorgang
- #Startzeit
- start_zeit = time.time()
- Hauptfenster=tk.Tk()
- Hauptfenster.title("Maehroboter")
- Garten = tk.Canvas(Hauptfenster, bg='green', width=BREITE, height=HOEHE)
- Garten.pack()
- Roboter = Roboter(Hauptfenster, Garten, BREITE, HOEHE, 50, "Red", 2,30, 10,"Roboter")
- #Roboter.fahren()
- Roboter.maehen()
- Hauptfenster.mainloop()
- #Endzeit
- end_zeit=time.time()
- print ("%.10f seconds" %(end_zeit - start_zeit))
|