from tkinter import * import _thread, time import math def paigutaSilm(): global ala, silm, silmax, silmay, silmar, silmanurk, silmakaugus global kehax, kehay, sammx, sammy silmax=kehax+silmakaugus*math.cos(silmanurk) silmay=kehay-silmakaugus*math.sin(silmanurk) sammx=(silmax-kehax)*0.1 sammy=(silmay-kehay)*0.1 paigutaKoll() def vasakNool(syndmus): global silmanurk, nurgavahe silmanurk+=nurgavahe #paigutaSilm() def paremNool(syndmus): global silmanurk, nurgavahe silmanurk-=nurgavahe #paigutaSilm() def edasi(): global kehax, kehay, sammx, sammy kehax+=sammx kehay+=sammy paigutaSilm() def paigutaKoll(): global kehax, kehay, kehar, silmax, silmay, silmar, ala, keha, silm ala.coords(keha, kehax-kehar, kehay-kehar, kehax+kehar, kehay+kehar) ala.coords(silm, silmax-silmar, silmay-silmar, silmax+silmar, silmay+silmar) def liigu(): while 1: try: edasi() time.sleep(0.1) except e: pass aken=Tk() ala=Canvas(aken, width=400, height=300) ala.pack() kehax=100 kehay=100 kehar=30 silmakaugus=40 silmanurk=3.14/4 nurgavahe=3.14/20 silmax=0 silmay=0 silmar=10 sammx=0 sammy=0 keha=ala.create_oval(kehax-kehar, kehay-kehar, kehax+kehar, kehay+kehar) silm=ala.create_oval(silmax-silmar, silmay-silmar, silmax+silmar, silmay+silmar) paigutaSilm() ala.bind("", vasakNool) ala.bind("", paremNool) #ala.bind("", edasiNool) #Pange edasi-tagasi klahvid liikumiskiirust muutma #Ala piirest ei saa v2lja minna ala.focus_set() _thread.start_new_thread(liigu, ()) aken.mainloop()