This repository contains .pde code for Processing sketches (refer http://processing.org/ for more information on Processing).
These sketches are examples that have been developed over the years. Most make use of nature-inspired phenomena or mathematics, such as autonomous agents and cellular automata.
Although these sketches were originally developed in earlier versions of Processing, they were made to be compatible with Processing 3.
The following is a list of the sketches included in this repository:
- Animated NURBS Surface: An animated NURBS surface imbued with movement through the addition of a particle spring system
- Animated Circle Grid: Animating a set of circles within a fixed grid pattern
- 1D Cellular Automata: 1D Cellular Automata played out on a 2D lozenge-shaped grid
- Circle Grid with Mouse Repel: Use your mouse to temporarily shift circle positions out of place
- Circle Packing Image: Pointillated image creation with circle packing algorithm
- Conway's Game of Life:
- Conway's Game of Life (3D): 3D implementation of the Conway's Game of Life CA
- Conway's Game of Life (Hexagonal Pattern): Hexagonal implementation of the Conway's Game of Life CA
- Double Pendulum: Four double pendula with various settings
- Fourier Transformations: Code to generate Fourier Transformations of a given input sequence
- Discrete Fourier Tranformation of a Heart Curve: Discrete Fourier Tranformation with epicycles using a heart curve as input
- Genuary 2022: Sketches created as part of Genuary 2022
- Colors80xLines800: 80 colours spread over 800 lines
- Destroy a Square: A grid with squares that gradually rotate out of position
- Fidenza: Processing version of a simple Fidenza-like implementation
- Thresholding with Three Colours: Image thresholding with 3 colours
- GIF Loops: Creating PNG images for a GIF loop
- Heart Curves GIF: Code to generate a set of images for a GIF of a cardioid curve circumscribing a heart curve
- 4D OpenSimplexNoise GIF: Code to generate a set of images for a GIF of 4D OpenSimplex Perlin noise map
- Image Processing: Various image processing algorithms and techniques
- Floyd-Steinberg Dithering: A dithering technique using error diffusion, meaning it pushes the residual quantisation error of a pixel onto its neighbouring pixels, to be dealt with later
- Image Dot Screen: A simple form of resolution reduction by increasing the effective pixel size
- Image Segmentation K-Nearest Neighbour: Image segmentation using the k-nearest neighbour algorithm
- Image Thresholding: Thresholding is the simplest method of image segmentation
- Image Voronoi: Using the k-nearest neighbour algorithm to break an image up into Voronoi colour fields
- Minimum Spanning Tree (Cities): Using Prim's Algorithm to calculate the Minimum Spanning Tree to connect the 50 largest cities in the US
- Monte Carlo Integration: Simple Monte Carlo Integration simulations to calculate the area of a give shape, using random numbers
- Parametric Curves: Various experiments with parametric and Lissajous curves
- Parametric and Lissajous Curves: 15 pre-defined parametric curve equations, including a set of Lissajous figures
- Parametric Heart Curves: A cardioid curve circumscribing a heart curve
- Parametric Curve Grid: Parametric curves on a 4 x 4 grid
- De Jong Attractor: A set of five pre-defined variables provided
- Phyllotaxis: Sunflower-like construction based on phyllotaxis design principles
- Quad Tree: Basic quad tree implementation
- Self-Organising Nets: Self-organising structures created by autonomous agents
- Self-Organising Net 2D: Randomising a 2D mesh away from its original hexagonal structure
- Self-Organising Net 3D: Wrapping a 2D mesh onto a 3D point cloud
- Soundscape: Visualising music as a 3D landscape
- Super Shapes: Parametrically controllable 3D SuperShape generator
- Travelling Salesman Problem: Distance Calculator: Using a genetic algorithm to find an optimised solution to the Travelling Salesman Problem
- Distance Calculator With Map: Genetic algorithm trained distance Calculator with map
- Distance Calculator Without Map: Genetic algorithm trained distance Calculator without map
- processing-eclipse: Example of how to incorporate a Processing sketch within a Java program
- processing-java: Example of how to run a Processing sketch from the command line (with parameters)
For video footage of this work in action, go to the Vimeo site: http://vimeo.com/carladebeer/videos.