[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-kimageshop
Subject: Re: KisPainter::paintPolygon used in paintops
From: "LukasT.dev () gmail ! com" <lukast ! dev () gmail ! com>
Date: 2009-04-09 22:32:13
Message-ID: 200904100032.13646.LukasT.dev () gmail ! com
[Download RAW message or body]
I still want to speed up the paintPolygon...
On Friday 13 March 2009 14:44:04 Cyrille Berger wrote:
> On Friday 13 March 2009, LukasT.dev@gmail.com wrote:
> > What would be the solution for paintops?
> > Made own class for paintPolygon? Or optimalize paintPolygon somehow in
> > KisPainter (I don't have idea how to cache created objects in KisPainter
> > :( )?
>
> Optimize paintPolygon.
>
> I don't share your analysis of the problem :/ In the callgrind you give,
> the creation of selection and objects isn't visible at all. The main cost I
> see is the computation of exactBounds (and worse here, we pay it twice).
> One might note, that those exactBounds aren't needed in this case, since we
> allready know the extent of the function.
Which function? Can you describe it more? I would implement it, but I don't
see what you see..You are standing on the shoulders of giants?
Can you take me there? :)
>
> An other area of improvement could be to not use the QPainter, and to
> directly fill the mask, there is most likely going to be a huge speed up as
> well, since QPainter::fillRect is to general for our purpose.
How would you fill it then? Using what class?
[Attachment #3 (text/html)]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" \
"http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" \
content="1" /><style type="text/css">p, li { white-space: pre-wrap; \
}</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; \
font-weight:400; font-style:normal;">I still want to speed up the paintPolygon...<br> \
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; \
margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; \
-qt-user-state:0;"><br></p>On Friday 13 March 2009 14:44:04 Cyrille Berger wrote:<br \
/>> On Friday 13 March 2009, LukasT.dev@gmail.com wrote:<br />> > What would \
be the solution for paintops?<br />> > Made own class for paintPolygon? Or \
optimalize paintPolygon somehow in<br />> > KisPainter (I don't have idea how \
to cache created objects in KisPainter<br />> > :( )?<br />><br />> \
Optimize paintPolygon.<br />><br />> I don't share your analysis of the problem \
:/ In the callgrind you give,<br />> the creation of selection and objects isn't \
visible at all. The main cost I<br />> see is the computation of exactBounds (and \
worse here, we pay it twice).<br />> One might note, that those exactBounds aren't \
needed in this case, since we<br />> allready know the extent of the function.<br \
/><br> Which function? Can you describe it more? I would implement it, but I don't \
see what you see..You are standing on the shoulders of giants? <br> Can you take me \
there? :)<br> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; \
margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; \
-qt-user-state:0;"><br></p>><br />> An other area of improvement could be to \
not use the QPainter, and to<br />> directly fill the mask, there is most likely \
going to be a huge speed up as<br />> well, since QPainter::fillRect is to general \
for our purpose.<br /><br> How would you fill it then? Using what class?<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; \
margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; \
-qt-user-state:0;"><br></p></body></html>
_______________________________________________
kimageshop mailing list
kimageshop@kde.org
https://mail.kde.org/mailman/listinfo/kimageshop
--===============0902915835==--
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic