from Tkinter import *
import random
random.seed()


master = Tk()

width = 1000
height = width

canvas = Canvas(master, width=width, height=height,background="white")
canvas.pack()





def circle(canvas,where,size):
    canvas.create_oval(where[0] - size / 2, where[1] - size /2, where[0] + size / 2, where[1] + size /2,fill="black",outline="black")



def simmetry(dot):
    x = 0
    y = 0
    
    center = ((width / 2) , (height / 2))
    
    if dot[0] > center[0]:
        x = center[0] - (dot[0] - center[0])
    else:
        x = center[0] + (center[0] - dot[0])


    #if dot[1] > center[1]:
    #    y = center[1] - (dot[1] - center[1])
    #else:
    #    y = center[1] + (center[1] - dot[1])
    y = dot[1]
    return (x,y)


def walk(canvas,stepnum,stepmax,sizemax,s=False):
    where = (width / 2,height / 2)
    for I in range(stepnum):
        
        stepmin = - stepmax


        sizemin = 1
        sizemax = 30
    
        where = (where[0] + random.randint(stepmin,stepmax), where[1] + random.randint(stepmin,stepmax))

        if s:
            circle(canvas,simmetry(where),random.randint(sizemin,sizemax))
        
        circle(canvas,where,random.randint(sizemin,sizemax))
    

def draw(steps=10):
    global canvas
    for I in range(steps):
        walk(canvas,random.randint(130,2000),random.randint(2,20),random.randint(2,6),True)
        #canvas.pack()
        canvas.update()


def clear():
    global canvas
    canvas.delete("all")


def click(event):
    clear()
    draw()

canvas.bind("<Button-1>", click)

mainloop()
