This is a simple utility for artists.
The basic idea is to simulate a figure drawing class with timed
poses. Going to a real, live session with a real model is obviously
ideal, but not always practical. With this utility, you point it at a
directory of images or an Atom feed (eg, from Flickr) and tell it how
long "poses" should last and it displays random images from that
source for a while until you stop it. It also shows you a countdown
timer in the corner so you actually know how much time you have left
for that pose.
Basic Example Usage:
% zeuxis.py 300 ~/images/poses/*.jpg
That will tell it to draw random images from your "~/images/poses/"
directory and do 5 minute (300 seconds) poses. Hit 'q' to exit.
To pull images from an Atom feed:
% zeuxis.py 300 -u 'http://api.flickr.com/services/feeds/photos_public.gne?tags=turtle&lang=en-us&format=atom'
That will do 5 minute poses of public photos on flickr with the
'turtle' flag. (Hey, I like drawing turtles).
Some extra features are available:
- grayscale: hit 'g' to toggle grayscale vs color display (if you
just want to do value studies)
- posterize: hit 'p' to cycle through several different levels of
higher contrast. This is useful in the same way that squinting at
a subject so you just get a sense of the big blocks of shapes. Try
it in grayscale mode.
- gridlines: hit 'l' to cycle through different numbers of gridlines
drawn on the image. Having a few lines up can be helpful for
tricky subjects.
You can also hit 's' to skip the current image and move on to the next
one.
Installation requirements:
- pygame (ubuntu: sudo aptitude install python-pygame)
- feedparser (ubuntu: sudo aptitude install python-feedparser)
Current Issues (patches welcome):
- Port to other platforms. I only run Ubuntu, so that's all I've
tested it on. Python and Pygame are available elsewhere though so
there's no reason it shouldn't work; I just don't have the
bandwidth to do it.
- Friendlier UI/commandline parsing.
- only handles Atom feeds of a pretty narrow flavor, with fullsize
images as enclosures on the entries. In particular, I don't yet
have it working with Flickr's RSS feeds (you currently have to
manually make sure there's a 'format=atom' in the url).
- it's not very smart about image sizes on feeds. Eg, if you're
running it on a 1024x768 display, it will still try to pull down
the full-size images from a flickr feed and rescale them (which
can be slow) itself, rather than notice that flickr makes
available images that are already closer in size to how it will
want to display.
- when pulling images from feeds, it should probably do something
intelligent about pre-fetching. Currently, it doesn't download the
image until it's time to display it, so you have to wait for it to
download and scale to the appropriate size. It would be better if
it did that in the background while the previous image is
displaying so it could just quickly swap over without a delay.
- doesn't handle multiple monitors very well. It tries to fullscreen
across all of them, but should probably limit itself to one
monitor.
- I guess a non-fullscreen mode might be useful to some people.
- I wish I knew how to disable screensavers and monitor power-saving
mode while it's on.