ok, basically it takes an image, converts it to a canvas, saves that canvas data, detects the edges of the image in the canvas, outlines the edges in black-and-white, saves that black-and-white canvas data, too, adds an event handler that onmousemove (iPad: ontouchmove) substitutes a circular region of the "outlined edges canvas data" with the "original image" canvas data - puuhh - that's all. hope you like it.