def circleFrame(pic,radius): width=getWidth(pic) height=getHeight(pic) for i in range(0,width): for j in range(0,height): # if pixel location is more than radius from center we set the pixel to black if dist(i,j,width/2.0,height/2.0)> radius: p=getPixel(pic,i,j) setColor(p,black) return def circleWipe(pic,numFrames): maxRadius=dist(getWidth(pic)/2.0,getHeight(pic)/2.0,0,0) print maxRadius outPic=duplicatePicture(pic) writePictureTo(outPic, "frame"+"0"*len(str(numFrames-1))+".bmp") for i in range(1,numFrames): radius = maxRadius* (1.0 - float(i)/float(numFrames-1)) circleFrame(outPic,radius) writePictureTo(outPic,"frame"+"0"*(len(str(numFrames-1))-len(str(i)))+str(i)+".jpg") return def dist(x,y,u,v): distSquared=(x-u)*(x-u)+(y-v)*(y-v) return(sqrt(float(distSquared)))