A little interactive demo coded with ActionScript 3.0 (Flash).
Click on the “image” to start then move mouse around to dissipate the pixels. Rest mouse in corners to allow the pixels to bounce back to their start positions.
The point of this exercise was to learn how to use [in AS3] commands like BitmapData to re-duplicate an image on a pixel by pixel basis (particles) and also manipulate the new particles’ position against mouse position, Also how their colouring is gained from the original image colours.
Math operators like sine and cosine applied to the particle velocities provide the slick motion (thanks to your computer crunching heavy maths faster than you can blink… almost).
The guys and girls at Flash & Math actually explain it all very well.