Hi Gary, edge_dog isn't the most elegant of plug-ins, and behaves more like a script than most C plug-ins; it creates temporary layers, and to do so, uses gimp_layer_copy. (see http://git.gnome.org/browse/gimp/tree/plug-ins/common/edge-dog.c line 471). So it inserts a check that the drawable is a layer before it does anything else.
I expect that careful checks and alternate code paths could alleviate the issue (copying masks to new layers), or it could be rewritten to do its operations in a more self-contained way. I'm not volunteering here, but it doesn't seem like an insurmountable amount of work for someone motivated. HTH, Seth Burgess On Sat, Jan 21, 2012 at 3:20 PM, Gary Aitken <[email protected]> wrote: > Hi Alexandre, > > Yes, I'm aware that I can work around it as you mention, and have been > doing so. But it is a pain in the rear, and unless there is some > over-riding reason for not allowing one to do this operation, it seems the > gimp should allow it. > > My main reason for posting was to see if it is a known issue and decided > to be left as-is. I don't see an open bug for it. I suspect it may be a > relic of implementation difficulties and so a capability which may be > desirable but a bit awkward to implement. > > Thanks, > > Gary > > > On 1/21/2012 12:39 PM, Alexandre Prokoudine wrote: > >> On Fri, Jan 20, 2012 at 11:02 PM, Gary Aitken wrote: >> >>> Hello all, >>> >>> gimp 2.7.5 on winXP, unfortunately. New hardware problems on my freebsd >>> system. grr. Anyway... >>> >>> Why won't the gimp allow me to use a difference of gaussians on a layer >>> mask? This seems like a perfectly fine thing to do for edge detection, >>> and >>> indeed, other edge-detect algorithms work: >>> >>> For example: >>> New layer mask, from grayscale copy of layer >>> Filters / edge-detect / difference of gaussians says: >>> Execution error for 'Difference of Gaussians': >>> Can operate on layers only (but was called on channel or mask). >>> but >>> Filters / edge-detect / Edge... >>> works fine >>> >>> Is this a bug, or am I missing something? >>> Any insights would be appreciated, >>> >> >> Hi Gary, >> >> Not sure about the technical side of this, but you should be able to >> perfectly work around that. >> >> 1. Enable display of the mask via right-click menu so that the mask is >> displayed instead of the layers's contents. >> 2. Layers> New from Visible. >> 3. Apply your filter to that layer. >> 4. Copy all of the layer's contents and paste it into the mask. >> 5. Remove or disable the extra layer you created. >> >> Alexandre Prokoudine >> http://libregraphicsworld.org >> ______________________________**_________________ >> gimp-user-list mailing list >> [email protected] >> http://mail.gnome.org/mailman/**listinfo/gimp-user-list<http://mail.gnome.org/mailman/listinfo/gimp-user-list> >> >> >> >> >> > ______________________________**_________________ > gimp-user-list mailing list > [email protected] > http://mail.gnome.org/mailman/**listinfo/gimp-user-list<http://mail.gnome.org/mailman/listinfo/gimp-user-list> >
_______________________________________________ gimp-user-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/gimp-user-list
