#!/usr/bin/env python #------------------------------------------------------------------------------ from Tkinter import Tk, Canvas import Image, ImageTk, ImageDraw from random import choice, randint #------------------------------------------------------------------------------ COLORI = "white", "red", "green", "blue", "yellow", "cyan", "magenta" WSC, HSC = 500, 400 #------------------------------------------------------------------------------ def elabora(dr): dr.rectangle((0, 0, WSC, HSC), "black") for _ in xrange(25): x = randint(0, WSC) y = randint(0, HSC) dr.line((0, 0, x, y), fill=choice(COLORI)) dr.line((WSC, HSC, x, y), fill=choice(COLORI)) dr.line((WSC, 0, x, y), fill=choice(COLORI)) dr.line((0, HSC, x, y), fill=choice(COLORI)) #------------------------------------------------------------------------------ class Applicazione: def __init__ (self): self.form1 = Tk() self.form1.title("Prova PIL") self.form1.resizable(False, False) self.canvas1 = Canvas( self.form1, highlightthickness=0, width=WSC, height=HSC) self.canvas1.pack() self.img = Image.new("RGB", (WSC, HSC), "black") self.dr = ImageDraw.Draw(self.img) self.im = ImageTk.PhotoImage(self.img) self.z = self.canvas1.create_image(0, 0, image=self.im, anchor="nw") def animazione(self): self.form1.after(100, self.animazione) elabora(self.dr) self.im = ImageTk.PhotoImage(self.img) self.canvas1.itemconfigure(self.z, image=self.im) def start(self): self.animazione() self.form1.mainloop() #------------------------------------------------------------------------------ app = Applicazione() app.start() #img.save("pippo.gif") #img.save("pippo.png")