Consecutive Convolutions

Dmitry Kazakov dimula73 at gmail.com
Tue Dec 22 15:58:24 CET 2009


Hmm, strange...
The problem is surely with some transactions stuff...
I'm having an exam tomorrow, so I'll be able to check this only tomorrow
evening.

Do you mean that Filter Layer applies correctly, but Filter dialog not?

Could you check whether "Filter Mask" works (as Filter dialog used to use
the one internally)?

And which function do you add these lines to? (i guess i have to apply your
patch first)


On Tue, Dec 22, 2009 at 5:45 PM, Ed . <schumifer at hotmail.com> wrote:

>  Adding a transaction for the src had no positive effect. Moreover, adding
> it causes the filter to work incorrectly as a filter layer (only 2nd
> convolution is computed).
>
> ------------------------------
> Date: Tue, 22 Dec 2009 17:34:05 +0300
>
> Subject: Re: Consecutive Convolutions
> From: dimula73 at gmail.com
> To: kimageshop at kde.org
>
> Hm.. stack is not needed actually.
>
> Add for the source:
> KisTransaction *t0 = new KisTransaction("", src);
>
> On Tue, Dec 22, 2009 at 5:29 PM, Ed . <schumifer at hotmail.com> wrote:
>
>
> Do you mean, like so?
>
>         QUndoStack stack;
>
>         KisTransaction *t1 = new KisTransaction("", interm);
>
>         KisConvolutionPainter horizPainter(interm, dstInfo.selection());
>         horizPainter.applyMatrix(kernelHoriz, src, srcTopLeft, srcTopLeft,
> size, BORDER_REPEAT);
>         stack.push(t1);
>
>         KisTransaction *t2 = new KisTransaction("", dst);
>
>         KisConvolutionPainter verticalPainter(dst, dstInfo.selection());
>         verticalPainter.applyMatrix(kernelVertical, interm, srcTopLeft,
> dstTopLeft, size, BORDER_REPEAT);
>         stack.push(t2);
>
> This had no effect whatsoever.
>
> ------------------------------
> Date: Tue, 22 Dec 2009 17:05:21 +0300
> Subject: Re: Consecutive Convolutions
> From: dimula73 at gmail.com
> To: kimageshop at kde.org
>
>
> Could you try to create transactions for both devices? Directly or using
> KisPainter's method. Filters rely on oldData feature but this do not work
> without a transaction created.
>
> On Tue, Dec 22, 2009 at 4:57 PM, Ed . <schumifer at hotmail.com> wrote:
>
>  Hi,
>
> I am performing two consecutive convolution operations, one after each
> other in a filter (the Gaussian Blur filter in the review board). Of course,
> I need a temporary buffer to do this. Below is what I'm doing.
>
>   KisPaintDeviceSP interm = new KisPaintDevice(*src);
>
>   KisConvolutionPainter horizPainter(interm, dstInfo.selection());
>   horizPainter.applyMatrix(kernelHoriz, src, srcTopLeft, srcTopLeft, size,
> BORDER_REPEAT);
>
>   KisConvolutionPainter verticalPainter(dst, dstInfo.selection());
>   verticalPainter.applyMatrix(kernelVertical, interm, srcTopLeft,
> dstTopLeft, size, BORDER_REPEAT);
>
> The output I'm getting when I apply the rasterizing filter, is the result
> of the second convolution only. However, if I apply the filter as a filter
> layer, I get the combined result of both convolutions.
>
> As boud suggested on IRC, I switched Krita to the old tile engine, and the
> results are correct in both cases. Therefore, the indication is that this is
> a problem with the new tile engine. Could anyone investigate further?
>
> ------------------------------
> Windows Live: Friends get your Flickr, Yelp, and Digg updates when they
> e-mail you.<http://www.microsoft.com/middleeast/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:en-xm:SI_SB_3:092010>
>
> _______________________________________________
> kimageshop mailing list
> kimageshop at kde.org
> https://mail.kde.org/mailman/listinfo/kimageshop
>
>
>
>
> --
> Dmitry Kazakov
>
> ------------------------------
> Windows Live: Make it easier for your friends to see what you’re up to on
> Facebook.<http://www.microsoft.com/middleeast/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:en-xm:SI_SB_2:092009>
>
> _______________________________________________
> kimageshop mailing list
> kimageshop at kde.org
> https://mail.kde.org/mailman/listinfo/kimageshop
>
>
>
>
> --
> Dmitry Kazakov
>
> ------------------------------
> Windows Live: Friends get your Flickr, Yelp, and Digg updates when they
> e-mail you.<http://www.microsoft.com/middleeast/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:en-xm:SI_SB_3:092010>
>
> _______________________________________________
> kimageshop mailing list
> kimageshop at kde.org
> https://mail.kde.org/mailman/listinfo/kimageshop
>
>


-- 
Dmitry Kazakov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/kimageshop/attachments/20091222/16af5dd9/attachment.htm 


More information about the kimageshop mailing list