<div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="gmail_quote"><div><div class="h5"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<div style="font-family: &#39;DejaVu Sans&#39;; font-size: 9pt; font-weight: 400; font-style: normal;"><div>On Sunday 13 September 2009, Dmitry Kazakov wrote:<br></div><div>
&gt; Btw, Blur filter doen NOT pay any attention to selections. And i do not<br>
&gt; know the way how can it do that. =(<br></div>
it&#39;s probably just a matter to give the iterrators the selection object.<br></div></blockquote></div></div><div><br>It won&#39;t solve the problem of semi-selected pixels (pixels with alpha~128). Such pixels should be filtered with cs-&gt;applyAlphaU8Mask() separately. I think it&#39;ll be quite complex solution for blur filter.<br>

<br><br>Atm, i insist on using bitBlt after the filtering. This will make filter creation much simplier, especially for filters that are quite complex themselves (like convolution). My tests show the following overhead:<br>

<br>when 28% of the canvas is  deselected we get only 2% overhead<br>when 53% of the canvas is  deselected we get only 13% overhead<br></div></div></blockquote><br></div>when 73% of the canvas is  deselected we get only 19% overhead<br clear="all">
<br>-- <br>Dmitry Kazakov<br>