(I think this has been discussed on the list before, but not sure where/when.)

What is the best way to achieve the following functionality -

  Given two layers L1 and L2, I want L2 limited by it's distance from L1

      Result  <-  L1 - MIN( MAX(L1 - L2), -20), 20)

(This expression uses L1/L2 as placeholder for each pixel in all RGB channels)


A. Write a plugin

B. Write it as a script-fu (not sure if script-fu can iterate on pixels, and what is the speed implication). And I hate scheme.

C. Write it in python fu if I can compile it, but even though it is probably not as universally available as scrip-fu. Can I iterate over an image in python-fu?

D. I know I can do it with 5 layers and overlay modes. write this as a script-fu. Not elegant and requires loads of memory for large images.

 Layer   Mode

 L1     Grain Merge
148     Darken Only
108     Lighten Only
 L1     Grain Extract
 L2     Normal

(148/108 stand for a layer filled with gray pixels (148,148,148)/(108,108,108)

E. Write a generic framework which allows any kind of expression(s) between layer(s) (Only kidding ...)

F. Anything better?


_______________________________________________ Gimp-developer mailing list [EMAIL PROTECTED] http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer

Reply via email to