[Marble-devel] Review Request: PlacemarkLayout: Tile Pyramid mecanism to provide scalable perfo

Thibaut Gridel tgridel at free.fr
Wed Mar 9 00:49:49 CET 2011


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

Review request for marble.


Summary
-------

I introduce a "TileId" based storage, whereas each placemarks receives a TileId depending on position and popularity.
More popular placemarks get to high-level "tile level", less popular go to low-level ones.
For a given BBox, calculating the "Tile pyramid" and getting placemarks from those TileIds provides a small subset of placemarks that should get rendered.

Some figures: we have currently c.a. 22000 placemarks, and most BBox provides an 10ish TileIds Pyramid, leading so c.a. 400 placemarks.
The scalability of filtering placemarks sounds quite obvious.

Tweaking level, placemark popIdx, and radius to level is TODO.


Diffs
-----

  /trunk/KDE/kdeedu/marble/src/lib/PlacemarkLayout.h 1224176 
  /trunk/KDE/kdeedu/marble/src/lib/PlacemarkLayout.cpp 1224176 

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


Testing
-------

Proof of concept of that Pyramid of TileId storage.
Please report on the Perfo impression and help tweaking:

- radius to level table (used to determine at which radius which level should be used),
- popIdx to level (used to seed placemarks to level according to their PopIdx)
- filtering the first 300 placemarks to display (should stay untouched)


Thanks,

Thibaut

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/marble-devel/attachments/20110308/556f187f/attachment.html 


More information about the Marble-devel mailing list