[GSoC proposal] Airbrush and Calligraphy paintops

Matthew Woehlke mw_triad at users.sourceforge.net
Thu Mar 27 23:51:52 CET 2008

Fela Winkelmolen wrote:
> The idea of Matthew of a 3d contour seems interesting. Allowing it to have 
> only one contour, it should be quite simple to implement, even if that means 
> the simulation isn't very accurate. But I'm very open to other ideas

Only one contour is a fine start. In fact, come to think of it I'd start 
with a fountain pen; that's just a line in 3d space ;-). Once that 
works, fancier stuff (like non-line contours, and eventually flexible 
quill simulation) can be added (preferably to the same tool).

> On Thursday 27 March 2008, Matthew Woehlke wrote:
>>> There are airbrushes that separate the function for air and paint flow
>>> (dual action airbrushes), but I'm not sure that makes sense in the
>>> digital version.
>> What is the effect of these?
> I'm not really sure, that's why I asked. I've never used a real airbrush 
> myself. According to wikipedia[1] a dual action airbrush "allows for greater 
> control and a wider variety of artistic effects".
> It might be that you can control the level of atomization controlling the 
> airflow, in that case it should be possible to simulate a dual action 
> airbrush with the granularity parameters.

Maybe. I've used a real airbrush (quite some years back, unfortunately; 
...eventually I want to buy myself a real one :-) ), but I don't recall 
if it was dual-action. Hopefully someone else can chime in here.

>> [...]
>> I would probably approach this as three parameters; flow rate, particle
>> size, and particle density (actual opacity of particles, which does in
>> fact need to be a fourth parameter, should come from the pigment, not
>> the tool). Rate is mostly a measure of how many particles are deposited
>> per unit of time (as you say, with maximum density, this equates to rate
>> as we understand it now), and makes sense to be controlled real-time.
> As I understand it, flow rate is simply what I called rate. The implementation 
> will be a bit different if the granularity is infinite (particle size = 0) 
> but the general visual effect should be the same, and from the user's point 
> of view it should be the same.

Right. The rate parameter means flow rate in all paint programs I'm 
aware of. It's just traditional to omit the word 'flow'. And yes, how 
you calculate the stamp will depend on the granularity (a.k.a. particle 
size; either term is fine), since obviously as you approach the 
dense/tiny end of the triangle, you can use simple math rather than 
simulating each particle.

The triangle is sparse/tiny, sparse/large, dense/tiny (particle density 
/ particle size)... and it's a triangle because the particle size is 
less relevant as the density approaches infinity.

> Density seems to me to be the same as the rate, or better, if the rate is 
> higher that means you will get a higher density in the same unit of time.

D'oh. You're right, of course. So we need rate and particle size (and 
pigment opacity, which should be a pigment property and not a tool 
property, IMO). Rate is of course controllable real-time. Particle size 
probably does not need to be, though I think ultimately our UI will make 
it easy to tie any parameter to any stroke property, even in 
combinations that don't make sense.

That said, if this is coming out of your posterior then you should 
consider your diet. -- Richard Moore, in response to Aaron Seigo's 
stated source of suggested enum values.

More information about the kimageshop mailing list