# # spiroo # import math g.antialias(1) g.norefresh() def border(): g.paper(100) g.field(25,0,75,100,20) g.field(40,40,60,60,10) def non(x,y,r,angle,color): g.pen(color) for i in range(0,101): x0 = int(r*i/100.0*math.cos(angle+2*math.pi*(i/100.0))) y0 = int(r*i/100.0*math.sin(angle+2*math.pi*(i/100.0))) x1 = int(r*i/100.0*math.cos(math.pi+angle+2*math.pi*(i/100.0))) y1 = int(r*i/100.0*math.sin(math.pi+angle+2*math.pi*(i/100.0))) g.setPixel(x+x0,y+y0,color) g.setPixel(x+x1,y+y1,color) x0 = int(r*math.cos(angle)) y0 = int(r*math.sin(angle)) for i in range(1,10): x1 = int(r*math.cos(angle+2*math.pi*(i/9.0))) y1 = int(r*math.sin(angle+2*math.pi*(i/9.0))) g.line(x,y,x+x0,y+y0) g.line(x+x0,y+y0,x+x1,y+y1) x0 = x1 y0 = y1 g.refresh() while 1: border() angle = 2*math.pi*g.getMouse(1)/100.0 non(50,50,25,angle,100)