On 10/17/06, Ken Bateman <kbateman@xxxxxxxxxx> wrote:
I've independently been thinking of a similar imaging core for the last month or so. Of course, I think it's a good idea. Logically, behind the scenes, everything should be in the form of a DAG. But I think that a raw DAG does not make up a part of a good user interface.
The current user interface used in the prototype GUI of GEGL is an abstraction above the DAG that is a tree with clones. This allows expressing all DAGs that have sources (one output) filters (one input and one output), composers (two inputs and one output). This is the interface model I used in bauxite[1] , with the added ability to make some of the nodes in this tree be embedded graphs I think you have the best of both worlds. It shold also be noted that one of the operations in GEGL at the moment is the "layer", which is a composition of over (or another compositing operator), translate and opacity.
Spreadsheets are in essence a DAG for performing numerical calculations, and I would suggest that the user interface should take the form of a spreadsheet since this is a model familiar to many users. Some cells would contain source rasters, other cells would contain paths, vector graphics, or masks (or even references to other functions), some cells would contain a function that referred to other cells for inputs, some cells could contain labels or comments, and most cells would be empty.
Such a user inteface does not lend itself well to a user that wants to do image manipulation in the manner traditionally done by users of GIMP, an application that does something along these lines is nip2[2] the interface of the vips projects. 1: http://pippin.gimp.org/bauxite/ 2: http://www.vips.ecs.soton.ac.uk/index.php?title=Nip2 /OEyvind K. -- «The future is already here. It's just not very evenly distributed» -- William Gibson http://pippin.gimp.org/ http://ffii.org/ _______________________________________________ Gegl-developer mailing list Gegl-developer@xxxxxxxxxxxxxxxxxxxxxx https://lists.XCF.Berkeley.EDU/mailman/listinfo/gegl-developer