[prev in list] [next in list] [prev in thread] [next in thread]
List: koffice-devel
Subject: Re: Review Request: Refactoring for KisPrescaledProjection
From: "Dmitry Kazakov" <dimula73 () gmail ! com>
Date: 2009-07-29 20:46:37
Message-ID: 20090729204637.3838.47044 () localhost
[Download RAW message or body]
> On 2009-07-29 20:16:28, Casper Boemann wrote:
> > I don't enough energy to look at your code really thoroughly. I'm sorry, but I don't think \
> > i can approve, because the special logic you have removed ensured that the subpixel \
> > positioning of the scaling coded worked.
> > Unless you can convince me that you have completely understood that and have somehow worked \
> > around that problem I don't think this should go in.
> > but again I've only had time to look at it loosely, so please convince me otherwise
>
> Dmitry Kazakov wrote:
> Subpixel positioning. Do you mean the one was used after Blitz::smoothScale(..)? This \
> positioning is done in a special function - drawWithRoundingCorrection(...). I'm gonna use \
> this function with the pyramid, so nothing is changed here, just made in a separate function. \
> Alignment to KisImage's pixels hasn't changed much either, it's done through \
> QRect(imageRectFromViewPortPixels()) --> viewRectFromImagePixels() chain. The only change \
> here (not sure this is a change, it was so before, i guess) - result viewRect can be slightly \
> bigger than the canvas due to alignment. But QPainter works it over very well. More than \
> that, such behavior was present before this patch and it worked quite well.
> The thing that was really removed is "useNearestNeighbour" option. I geuss, it's quite \
> deprecated, but i'm gonna implement it somehow later.
> Casper Boemann wrote:
> Hmm Ok as far as I'm concerned you have proved to be on top of it. I still havn't read you \
> commit exactly, so I can't really say go, but I have no objections anymore
2all:
Maybe someone knows some special testcases of subpixel positioning?
I have tested it much: with different documentOffset's and large scales. Painting works.
- Dmitry
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/1156/#review1844
-----------------------------------------------------------
On 2009-07-29 11:44:40, Dmitry Kazakov wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/1156/
> -----------------------------------------------------------
>
> (Updated 2009-07-29 11:44:40)
>
>
> Review request for KOffice.
>
>
> Summary
> -------
>
> Makes prescaled projection code simplier and clearer. It also removes weird [1], simply \
> unused [2] and previously unused code with bugs [3].
> Most significant changes:
> 1) imageRectFromViewPortPixels and viewRectFromImagePixels now just convert rects' coords, \
> without respect to canvas size (they still do respect image size). 2) They both made \
> _private_ so this change won't brake anything outside 3) Broke the link from KisCanvas2 to \
> KisPrescaledProjection::viewRectFromImagePixels. It was quite bad idea to use internal \
> conversion function from outside. Reasons: a) they are internal
> b) vRect can be changed (expanded) by prescaled projection during update (mipmap case)
> c) viewRectFromImagePixels was called twice: from KisCanvas2 first and then from \
> KisPrescaledProjection::updateCanvasProjection again 4) now it's easier to maintain
>
>
> [1] kis_pescaled_projection.cc:412-431
> [2] kis_pescaled_projection.cc:396-403
> [3] kis_pescaled_projection.cc:532
>
>
> Diffs
> -----
>
> trunk/koffice/krita/ui/CMakeLists.txt 1000698
> trunk/koffice/krita/ui/canvas/kis_canvas2.cpp 1000698
> trunk/koffice/krita/ui/canvas/kis_prescaled_projection.h 1000698
> trunk/koffice/krita/ui/canvas/kis_prescaled_projection.cpp 1000698
> trunk/koffice/krita/ui/tests/kis_prescaled_projection_test.cpp 1000698
>
> Diff: http://reviewboard.kde.org/r/1156/diff
>
>
> Testing
> -------
>
>
> Thanks,
>
> Dmitry
>
>
_______________________________________________
koffice-devel mailing list
koffice-devel@kde.org
https://mail.kde.org/mailman/listinfo/koffice-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic