Approximate an input image by adding random shapes on top of each other in parallel.
Dependencies:
Optional dependencies:
- SDL2 and SDL2-ttf
- FreeImage
To build, first run futhark pkg sync
once.
Then run make
to build.
-
To build without the SDL dependency, instead run
STUPIDART_NO_INTERACTIVE=1 make
. -
To build without the FreeImage dependency, instead run
STUPIDART_NO_FREEIMAGE=1 make
. This means you will only be able to read and write images in the Netpbm PAM format. You can use ImageMagick'sconvert
utility to convert from and to this format. -
You can also use the backend-specific
LYS_*
environment variables mentioned in Lys beforemake
.
Run ./stupidart <input image> <output image>
to generate art.
Run ./stupidart --help
to see the available options.
Unless you run stupidart -I
, you will watch the image as it is
generated (note that this is slower than the non-interactive approach due to some
internals).
1
: Generate random shapes (default)2
: Generate only triangles3
: Generate only circles4
: Generate only rectanglesr
: Reset- Space: Pause/unpause
- F1: Toggle showing the text.
- ESC: Save the current image (always without the text) to the output file and exit.