[Marble-devel] Re: Review Request: introduce optimized code path for Mercator projection

Bernhard Beschow bbeschow at cs.tu-berlin.de
Wed Dec 22 23:33:36 CET 2010


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://svn.reviewboard.kde.org/r/6109/
-----------------------------------------------------------

(Updated 2010-12-22 22:33:36.741978)


Review request for marble.


Changes
-------

Adopted patch to suggestions:
* respect map quality
* Q_ASSERT some values that are divisors to be greater than 0
* use QRectF instead of QRect


Summary
-------

This patch introduces an optimized code path for the case that both the tile projection and the map projection are of type Mercator. In this very common case, the tiles can be scaled rather than reprojected, promising a significant speedup. Moreover, it seems to avoid crashes in high zoom levels on the N900.


Diffs (updated)
-----

  /trunk/KDE/kdeedu/marble/src/lib/AbstractScanlineTextureMapper.h 1208706 
  /trunk/KDE/kdeedu/marble/src/lib/AbstractScanlineTextureMapper.cpp 1208706 
  /trunk/KDE/kdeedu/marble/src/lib/CMakeLists.txt 1208706 
  /trunk/KDE/kdeedu/marble/src/lib/TextureLayer.cpp 1208706 
  /trunk/KDE/kdeedu/marble/src/lib/TileScalingTextureMapper.h PRE-CREATION 
  /trunk/KDE/kdeedu/marble/src/lib/TileScalingTextureMapper.cpp PRE-CREATION 

Diff: http://svn.reviewboard.kde.org/r/6109/diff


Testing
-------

I have measured speedups of up to 2.7 on my system. This seems to depend on the QImage::Format, so format conversion should be avoided in a future version if possible.
The image quality is roughly of outline quality when a discrete zoom level isn't hit.

I get crashes on my Netbook, but not on my other machine. The error message is: "QPaintDevice: Cannot destroy paint device that is being painted". I've got no idea what's going on here. Please help.


Thanks,

Bernhard

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/marble-devel/attachments/20101222/fde7464b/attachment.htm 


More information about the Marble-devel mailing list