Consecutive Convolutions

Dmitry Kazakov dimula73 at gmail.com
Thu Dec 24 21:02:35 CET 2009


I applied a patch to 1065553 and get crash every time i press Gaussian Blur
=(

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

>  Yes, it only works correctly as a filter layer. It also doesn't work
> correctly as a Filter Mask.
>
> I'm adding the transaction just before performing the convolution.
> Regarding the patch, I'm attaching the latest revision.
>
> There is no particular hurry. Good luck for your exam.
>
> ------------------------------
> Date: Tue, 22 Dec 2009 17:58:24 +0300
>
> Subject: Re: Consecutive Convolutions
> From: dimula73 at gmail.com
> To: kimageshop at kde.org
>
> 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
>
> ------------------------------
> 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/20091224/dab28ce0/attachment-0001.htm 


More information about the kimageshop mailing list