the processing portfolio of
Steven Kay

member since December 8, 2009
Edinburgh OpenStreetMap history

Edinburgh OpenStreetMap history

Visualising the mapping history of Edinburgh by the OpenStreetMap community. Older data is blue, newer data is red. Based on the timestamps of nodes. [Click] to restart [SPACE] to toggle display modes
zebra trails

zebra trails

move the mouse over the sketch to draw a trail. click to cycle between different views.
zx spectrum loading screen

zx spectrum loading screen

emulating a zx spectrum loading screen in processing
Galaxy Spirals

Galaxy Spirals

watch the spirals evolve and mutate slowly over time
Spirals

Spirals

Spirals.. click to cycle through the various presets
stained glass

stained glass

simple example of recursion..
random grid

random grid

interactivity: use - and +/= to change zoom use [space] to toggle between color and monochrome [click] to change phase
SRTM Digital Elevation Model Demo

SRTM Digital Elevation Model Demo

A simple rendering of digital elevation data. The area shown is Norway/Sweden, south of Oslo (Oslo is near the top of the screen). An example of reading binary data. This shows a 1x1 degree square; elevations are shown in greyscale (white=higher ground), sea is shown as blue, and void areas are shown in red.
Excitable Media Cellular Automata

Excitable Media Cellular Automata

yet another CA. Ported from a C# version I wrote a few years back, but now in 3D :) Based on the idea of 'excitable medium', see the comments and http://en.wikipedia.org/wiki/Excitable_medium for more info. Interactivity: [Click] to start over
Planets

Planets

Using the simple equations of gravity. Interactivity: s - turn stroke on/off t - turn trails on/off [ - fewer planets ] - more planets SPACE or click - reset
metaballs

metaballs

metaballs effect cannabilized from my earlier SqueezePast sketch Interactivity + and - to add / remove metaball [ and ] to change metaball radius SPACE to cycle through colour schemes q to toggle fast/slow More info on Metaballs here:- http://en.wikipedia.org/wiki/Metaballs
24 hours of Flickr geotagged uploads

24 hours of Flickr geotagged uploads

Visualizing 24 hours of geotagged photos being uploaded to flickr. Data was captured using the flikr api and written by a python script to a CSV file. So this is playing back historic data (from one day in March 2009). Each 'flash' represents a single geotagged photo uploaded to Flickr. There is also a grid of 1x1 degree resolution, which are coloured according to the number of photos found in that grid square. [q] speed up [a] slow down [z] slowest animation [r] reset [m] turn map on/off [g] turn grid on/off .
squeeze past v2

squeeze past v2

A reworking of a previous sketch, to improve speed, implement some suggestions, and to add some interactivity. You can see the original (slow) version here.. http://www.openprocessing.org/visuals/?visualID=6417 Optimized for speed by using a pre-computed table of distances, which (for me) improves the frame rate by a factor of 3. [SPACE] cycles between the three display modes. [PLUS] adds a new bubble [MINUS] removes a bubble [Q] toggles fast/slow - use this to compare the speed difference between using the pre-computed and normal versions.
Bounce game

Bounce game

Bounce and roll the ball along the track. Use the mouse to move the ball forwards (up/down) and sideways (left/right). Avoid touching black squares - hitting one loses you one of your five lives. Yellow squares give a good score. Cyan squares make you bounce twice as high. Red squares makes the ball roll along the ground until you hit a cyan square. You get high scores by doing 'combos' .. an uninterrupted set of bounces on yellow and cyan squares. Hitting any other type of square is a combo breaker ;-) When it's game over, click to try again.
Harmonograph in 3D

Harmonograph in 3D

A Harmonograph in 3D. [Click] to start a new animation. You can find more info on Harmonographs on wikipedia... http://en.wikipedia.org/wiki/Harmonograph
Crystallization

Crystallization

a simple crystal growing system a number of 'species' grow at predetermined speeds to fill the space available. [Click] to start again [r] to use random mode. Each species can start in more than one place. [s] to use sparse mode. Each species starts in only one place. [g] to toggle grid.
Spherical geometry

Spherical geometry

spheres rolling around on the surface of a sphere
Ripples in 3D

Ripples in 3D

the effect of ripples in 3D. Starts with 3 ripples of random amplitude and wavelength. Ripples eventually fade out; when the surface is nearly flat it will start over again. Mouse Y position controls tilt. Press any key to add another random ripple (need to click first to give applet 'focus') Click to start again.
Lissajous figures

Lissajous figures

Lissajou figures - click on the sketch to change the x and y frequencies (or wait a while, and they'll change at random)
Dodgeball

Dodgeball

a simple game to test your coordination and reaction times.This is a port of a flash game I wrote many years ago. Move the white ball around to avoid the bouncing red balls. Use the powerups - some make the game easier, some make it harder (but make it possible to get higher scores). The splash screen gives more info..
mona lisa cube

mona lisa cube

image spread around a cube, then rotated.
coalescence

coalescence

a very simple cellular automaton. the population is randomly scattered between red and blue. on each generation, each cell is influenced to change allegiance to the majority color of its neighbours. Click on the sketch to start again.
tiny script - binary fractal

tiny script - binary fractal

doing a simple sierpinski triangle using simple binary arithmetic. first attempt at a tiny script. Got down to 112 characters.
perlin noise dust field

perlin noise dust field

inspired by this sketch ( http://www.openprocessing.org/visuals/?visualID=1163 ) to try the perlin noise functions. Press [Space] or click to start again. Press [t] to turn trails on/off The pattern alters quite slowly over time.
tonnetzynth - a chord synthesizer

tonnetzynth - a chord synthesizer

This is an interactive chord synthesizer developed using the minim library. You can use this to try out chord progressions using a single click of the mouse. Have a play! Click on the squares on the grid to play new chords; a left-click gives a major chord, a right-click a minor chord. The waveform is shown too. If you're wondering where the name comes from, google 'tonnetz' (german for 'tone network'). It's fairly basic at the moment. I'm sure there are lots of improvements that can be made to improve the musical quality...
Chaos Game

Chaos Game

A randomized version of the Chaos Game...
Squeeze Past

Squeeze Past

A Voronoi map created from a set of moving points