Re: [Gegl-developer] Path to the GIMP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Øyvind Kolås wrote:

* Daniel Rogers <daniel@xxxxxxxxxxxxxxxxx> [040115 23:08]:

oops.  Sent the last mail a little early.

Also, I don't like the idea of temporary ops. I think ops should be persistent and creating an linking in a temp op, which I think of as a pretty heavyweight operation seems pretty wasteful.


Given a good caching system, the operation should not be heavyweight,
you need animateable parameters for the op's anyway,. en effectlayer
must be editable from within the gimp, effectively animating the effect
constantly getting a preview of what the changes lead to, scrubbing the
range widget is still animating.

I disagree. Changing the graph is a pretty destructive operation that will trigger invalidations of large regions. Futher, you may leave the graph is an undeseriable, undefined state, which would cause havoc if some other system is asynchronously requesting renderings from it.

The invalidations are much easier to keep track of and propagate if you just use the writable image-type idea.

The stroke of the paintbrush is well expressed as a vector,. you want
the coordinates to be subpixel coordinates anyway. Sampling them from a
mouse is even easier given a proper affine transform for zoom, and
rotation (a desireable thing to do with the canvas and a Wacom for
instance.). In zoomed out mode, this would mean that the motion events
we get won't draw polylines, but can be approximated with bezier curves
for better interpolation, also a desireable feature.

Yes, but I think you are mixing two actions. Sometimes what you want is a brush stroke. In which case it is sampled from the mouse and may or may not be stored as a vector. Sometimes what you want is a path, which should be stored as a vector and will be easy to animate.


The latter is the right thing, the procedural drawing routines are
possible to create within that model, and the procedural drawing
routines can be used with dynamic parameters as the user interacts with
the ui, in the model I outline above. So at least it doesn't disallow
any of the implementations :)

see above :-)

--
Dan


[Index of Archives]     [Yosemite News]     [Yosemite Photos]     [gtk]     [GIMP Users]     [KDE]     [Gimp's Home]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux