Category: Projects
Back To iBlog
Welcome back.
rob-art First Release
You’ll need a Lisp interpreter/compiler to run the code and a PostScript viewer to view the output from Draw Something.
Click here for details.
Draw Something More
The current system starts with a set of random points (or lines, depending on how you look at it), finds the “convex hull” (the simplest shape that contains them), then draws around that. This is a very, very simple analogue to constructive drawing for illustration where shapes are built up around a skeleton or armature and then drawn around to construct a figure. It is a similarly simply analogue to artistic observation and rendering of some part of the visible world.
Following these comparisons, Draw Something assembling simple shapes (convex hulls again) into more complex figures will trivially model assembling or revising a composition from preparatory sketches. The shapes will be generated randomly on the page then moved into position so that they all overlap (making multiple figures is a future task). I like the idea of drawing the starting lines and hulls in light blue, the assembled hulls in darker blue (or red), and the finished outline in black to show how the figure has been assembled (the colours come from drawing for animation).
I was worried that this was an arbitrary task to set the program until I realised that making simpler shapes, composing them and outlining them is exactly how I constructed my “Blobs”. So in fact this is a task I have productively set myself in the past, and it will be interesting to see what Draw Something makes of it.
I’ve moved to LiveJournal…
See: http://www.livejournal.com/users/robmyers/
Minara In Progress
I’m doing less well with colour. I’ve got LittleCMS, but the idea of having colour primaries as gamut-limit XYZA tuples means that gamut checking hopefully isn’t a problem. What LCMS could be useful for is mapping the abstract percentage of the colour to the actual strength of colour on the screen or the press, which won’t be linear. But I don’t know if I want to do that just yet.
How do we do colour picking? Make an image with percentages of each of the primaries in, display that, and update the mix when the user clicks, accepting when they double click. Who needs GUI widgets? 🙂
Eating My Own Dog Food
Minara needs continuing. it needs real tasks and projects to work on.
So I’m going to write the bits of Minara I need to edit “1968”. Defining colours, managing colour accuracy, and possibly hit-testing will all be needed. I’ll also have to make sure the import filter works well to convert 1968 to minara format.
In software engineering jargon this is known as “eating your own dog food”. Yum.
The Ontology For “Draw Something”
In computing an ontology is data that represents knowledge, particularly facts and rules. So for a medical program, the ontology would contain information about which drugs treat which conditions, and how those drugs interact. In philosophy, ontology is the metaphysics of being and categories of being. Both meanings are applicable to Draw Something’s ontology; it’s a computer representation of an investigation into what art is and how you produce art-objects.
I have a certain way I want Draw Something’s ontology to work – more as active “daemons” than as passive symbols. I’ve been looking at Paul Graham’s writing on “closures” in his book “On Lisp“. Closures combine data and instructions in a more active way than other programming techniques do, but I’m not sure they’re what I need (in particular I don’t know how to copy closures in a program or get polymorphic behaviour from them). And very few people understand closures. And I’m not really one of them yet. 🙂
My favourite type of ontology is Douglas Hofstadter’s slipnet, as seen in his & Melanie Mitchell’s “CopyCat” program, explained in “Fluid Concepts and Creative Analogies“. A slipnet allows more specific ideas (“the number 5”) to be generalised to less specific ideas (“numbers”) if the a particular problem cannot be solved with more specific ideas. Copycat also has a nice split between its built-in concepts and its current working memory. Hopefully this will be a useful model to use for Draw Something.
Sourceforge haven’t approved rob-art yet. It’s a shame that Lipparosa doesn’t seem to have come to anything…
Draw Something
I’ll probably get my creative coding projects hosted at SourceForge, so that will make distribution easier as well.