branches/koffice/1.6/koffice/krita/plugins/filters
Bart Coppens
kde at bartcoppens.be
Thu Sep 7 17:52:45 CEST 2006
On Thursday 07 September 2006 14:05, Bart Coppens wrote:
> In a way you're right. Let me look into this.
Status report: it finally dawned on me why the convolution filters don't work
together with adjustment layers. Basically, we get this:
1) Add Adjustment Layer
1.1) Layers underneath the adjustment layer are composited to the projection
1.2) The adjustment layer's filter convolves the projection. No problem.
2) Change adjustment selection / Add dab underneath adjustment layer
2.1) The layer underneath gets updated in the dirtyRect of the dab
2.2) Adjustment layer needs again convolves the projection. Problem! Because
the convolution needs a _bigger_ source rect, we give it that.
This is a problem, because outside the original dab rect, the projection is
stale! It's filled with the previous convolution result. So the second
adjustment takes into account the first convolution result at the edges,
instead of the actual projection. And these errors obviously accumulate.
Solutions: somehow cache the original composition, or re-composite it, or
beforehand ask the adjustment layer how much larger the rect will be. Of
course, each of those solutions has a filter use case that it's really good
for, and one that it's really bad for ;-(
Bart
More information about the kimageshop
mailing list