Mark Stock


Pipes is a 3D, stand-alone, on-lattice path geometry creator in the same vein as the popular screensaver. I wrote it so that I could use the random, space-filling geometries in Radiance renderings, and after a few years of back-burner development, it can support a small variety of options. It is written in ANSI C and only requires libpng and the standard C libraries to compile.


The current version of Pipes is 0.6. You can download it here: pipes.c.

Just download the file compile it: (cc -o pipes pipes.c -O2 -lm -lpng).


Pipes supports the following features


10k segments created by pipes -png run08.png -s 100 100 100 -obj run08.obj, with default straight probability of 0.7 run08.obj (129764 triangles)
5k segments created by pipes -png run09.png -s 100 100 100 -obj run09.obj -f 0.2, with straight probability of 0.2 run09.obj (104516 triangles)
10k segments created by pipes -png run10.png -s 100 100 100 -obj run10.obj -f 0.9, with straight probability of 0.9 run10.obj (98484 triangles)
16k segments created by using the cylindrical projection method; command was pipes -png run11.png -s 25 300 100 -cyl 25 1 -n 2 -szl
10k segments created by using the spherical projection method; command was pipes -png run12.png -s 25 300 80 -sph 25 1 -45 45 -n 1 -sxl
Radiance rendering of output from the command pipes -n 20 -s 100 100 100 -f 0.94 -szl
Radiance rendering of spherical output from Dec 2001

Future plans

Future versions of Pipes may address the following needs:

Please e-mail me if you'd like to see some particular feature in Pipes, or if you use it to make something creative.