Skip to content

danljm/processing

Repository files navigation

Processing Sketches

A collection of Processing sketches — a mix of original creative coding experiments and learning exercises adapted from artists and authors I admire (Daniel Shiffman, Jared Tarbell, Holger Lippmann, and others).

Sketches

Generative Art

Sketch Description
Peter_De_Jong Strange attractor visualization using Peter de Jong equations. Based on Jared Tarbell's work.
RandomCurves Generative bezier curves colored by sampling a source image. Inspired by Holger Lippmann.
RandomCurvesLink Extended version of RandomCurves with chained multi-point bezier curves and decaying bounds.
AlbumSketch Recreates album art by rendering song lyrics as characters colored from the source image.
mosaic_project Space-filling box algorithm that reconstructs an image as a mosaic of colored squares. Based on Tarbell's work.
Stippling Physics-based stippling using toxiclibs' Verlet physics to place dots that approximate an image.

Fractals & L-Systems

Sketch Description
Koch Koch snowflake fractal, rendered iteratively level by level.
Mandelbrot Classic Mandelbrot set renderer with pixel-level iteration coloring.
lsys L-system grammar-based fractal generation with turtle graphics rendering.
Tree Recursive branching tree where branch angle follows the mouse.
Tree2 Non-recursive tree using an ArrayList to manage branching growth.
Tree3 Extension of Tree2 that adds leaves at terminal branches.

Cellular Automata & Simulation

Sketch Description
GOL Conway's Game of Life with wrap-around edges. Click to reset.
WolframCA 1D Wolfram cellular automata — auto-restarts with a random ruleset when it reaches the bottom.
Agent Random-walk particle system where 50 agents paint semi-transparent trails on a canvas.

Data Visualization

Sketch Description
AirlineSketch Maps global airline routes as bezier curves over a 10000x5000 canvas using real airport and route data.

Image Processing

Sketch Description
AggregateImage Layers multiple photos with transparency to create a composite image.
Blending Interactive demo of Processing's blend modes — click to cycle modes, drag to adjust alpha.
voronoi Voronoi diagram using toxiclibs with Lloyd's relaxation (iteratively moves sites to region centroids).
voronoi_cone 3D cone-based Voronoi renderer that samples colors from a source image. Originally a computational geometry final project.

Bundled Code Packages

Folder Description
Generative-Design-Code-Package Companion code from the book Generative Design — organized into chapters on color/shape (01_P), math (02_M), and algorithms (03_A).
formandcode-examples Companion code from the book Form+Code.

Running the Sketches

Install Processing

  1. Download Processing from https://processing.org/download
  2. Install and launch the Processing IDE (PDE)

Open and Run a Sketch

  1. In the Processing IDE, go to File → Open
  2. Navigate to any .pde file in this repo (e.g. GOL/GOL.pde)
  3. Click the Run button (▶) or press Cmd+R (macOS) / Ctrl+R (Windows/Linux)

Each sketch folder follows the Processing convention: the folder name matches the main .pde file name.

Dependencies

Some sketches require external libraries:

  • toxiclibs — Used by Stippling, voronoi, and voronoi_cone
    • In the Processing IDE: Sketch → Import Library → Manage Libraries
    • Search for "toxiclibs" and install it

Known Issues

  • Several sketches have hardcoded Windows file paths for image loading (e.g. C:\Users\Danny\...). These will need to be updated to use relative paths or your own local paths before they'll run:
    • AggregateImage, Blending, RandomCurves, RandomCurvesLink, AlbumSketch, Stippling
  • Sketches that load images from relative paths (like AirlineSketch, mosaic_project, voronoi_cone) should work as-is, provided the data files are present in the sketch folder.
  • The purely algorithmic sketches (GOL, Mandelbrot, Koch, Tree, WolframCA, Agent, lsys) run without any external files.

About

Repository for Processing sketches

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors