|
@@ -13,7 +13,7 @@ import time
|
|
|
BREITE= 600 #Hauptfensterbreite
|
|
|
|
|
|
HOEHE = 400 #Hauptfensterhoehe
|
|
|
-
|
|
|
+ #Gartenflaeche=240.000Pixel
|
|
|
#global
|
|
|
#global
|
|
|
|
|
@@ -34,15 +34,15 @@ class Roboter(object):
|
|
|
|
|
|
self.canvas.move(self.tag, self.Richtung_x, self.Richtung_y)
|
|
|
|
|
|
- position = self.canvas.coords(self.tag)
|
|
|
+ position = self.canvas.coords(self.tag) #Koordinaten der Roboterpositionen
|
|
|
if position[0] == 0:
|
|
|
- self.Richtung_x = 0.5 #Geschwindigkeit nach Kollision
|
|
|
+ self.Richtung_x = 0.5 #fahre weiter Richtung x_Achse, (=Ausgangskoord.+0.5)
|
|
|
if position[1] == 0:
|
|
|
- self.Richtung_y = 0.5
|
|
|
+ self.Richtung_y = 0.5 #fahr weiter Richtung y_Achse, (=Ausgangskoord.+0.5)
|
|
|
if position[2] == self.width:
|
|
|
- self.Richtung_x = -0.5
|
|
|
+ self.Richtung_x = -0.5 #bei Kollision (seitliche Wand) drehe um (90°)
|
|
|
if position[3] == self.height:
|
|
|
- self.Richtung_y = -0.5
|
|
|
+ self.Richtung_y = -0.5 #bei Kollision (obere/untere Wand) drehe um (90°)
|
|
|
self.canvas.after(self.Geschwindigkeit, self.maehen)
|
|
|
|
|
|
x0= position[0]
|
|
@@ -51,6 +51,53 @@ class Roboter(object):
|
|
|
y1= position[3]
|
|
|
self.canvas.create_oval(x0, y0,x1, y1, fill="red") #Markierung des Maehweges mit Neuzeichnung des Roboters
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+#Idee: Abbruch der Fahr-Schleife, wenn Rob an Endkoordinaten ist--> break
|
|
|
+
|
|
|
+
|
|
|
+#Koordinaten-Datei erzeugen
|
|
|
+
|
|
|
+# input=open("Koordinaten.py").readlines()
|
|
|
+ start_x=30
|
|
|
+ Liste=[] #Hauptliste
|
|
|
+ x0_Koordinate=[] #4 Unterlisten in Hauptliste, Darst. als 4 Spalten
|
|
|
+ y0_Koordinate=[]
|
|
|
+ x1_Koordinate=[]
|
|
|
+ y1_Koordinate=[]
|
|
|
+ x0_Koordinate.append(x0) #Daten in entsprechende Unterlisten hinzufuegen
|
|
|
+ y0_Koordinate.append(y0)
|
|
|
+ x1_Koordinate.append(x1)
|
|
|
+ y1_Koordinate.append(y1)
|
|
|
+
|
|
|
+ input=open("Koordinaten.py") #Hauptliste und Unterlisten in Koordinaten-Programm hinzufuegen
|
|
|
+ linenr=0
|
|
|
+ while True:
|
|
|
+ line=input.readline()
|
|
|
+ if not line: break
|
|
|
+ Liste.append(line.split()) #zeilenweises Hinzufuegen
|
|
|
+ Liste.append(x0_Koordinate)
|
|
|
+ Liste.append(y0_Koordinate)
|
|
|
+ Liste.append(x1_Koordinate)
|
|
|
+ Liste.append(y1_Koordinate)
|
|
|
+
|
|
|
+ laenge= len(Liste) #Laenge der Liste
|
|
|
+# print laenge
|
|
|
+
|
|
|
+ input.close()
|
|
|
+ output=open("Koordinaten.py", "w")
|
|
|
+
|
|
|
+ for i in range (0,start_x)
|
|
|
+
|
|
|
+ #print x0_Koordinate[0], y0_Koordinate[0], x1_Koordinate[0], y1_Koordinate[0]
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+# print x0
|
|
|
+# print y0
|
|
|
+# print x1
|
|
|
+# print y1
|
|
|
+
|
|
|
# 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)
|
|
@@ -71,6 +118,12 @@ class Roboter(object):
|
|
|
#Zeitmessung Maehvorgang
|
|
|
#Startzeit
|
|
|
start_zeit = time.time()
|
|
|
+#Koordinaten zwischenspeichern in Extradatei
|
|
|
+#input=open("Koordinaten.py").readlines()
|
|
|
+#x_Koordinate=[]
|
|
|
+#y_Koordinate=[]
|
|
|
+
|
|
|
+
|
|
|
|
|
|
Hauptfenster=tk.Tk()
|
|
|
Hauptfenster.title("Maehroboter")
|
|
@@ -84,6 +137,6 @@ Hauptfenster.mainloop()
|
|
|
|
|
|
#Endzeit
|
|
|
end_zeit=time.time()
|
|
|
-print ("%.10f seconds" %(end_zeit - start_zeit))
|
|
|
+print ("%.1f seconds" %(end_zeit - start_zeit))
|
|
|
|
|
|
|