[OSM-talk] Osm2go: mobile mapping with Nokia n800/n810
Andrew Chadwick (email lists)
andrewc-email-lists at piffle.org
Tue Nov 25 11:20:42 GMT 2008
Till Harbaum / Lists wrote:
> thanks. I am not sure about the performance impact of the patch as it increases
> the overall canvas size significantly. I'll have an eye on this as especially the small
> maemo devices seem to fight with their low memory.
Well, a vector canvas shouldn't be drawing to a huge bitmap - at least,
not one bigger than the current exposed area! - so that ought to be OK.
My purely unscientific tests (attached) don't seem to show any
correlation between frisket size and RAM usage immediately after the
program has loaded and drawn my test data. Peak usage may vary *during*
the drawing, of course.
I noticed that larger frisket sizes seem to take a little longer to
draw. Perhaps converting the current couple of polygons to four
rectangles would be a little faster.
Speed of drawing, panning etc. feels to me to be mostly dependent on the
number of objects drawn on screen at any one time. I wonder if
GOO_CANVAS_ITEM_VISIBLE_ABOVE_THRESHOLD would be of any use here? But
then, what do you do if the user selects some motorway or other low-zoom
object for editing? If it's connected to other objects, should those
objects be set to GOO_CANVAS_ITEM_VISIBLE so that the user can't break
them by changing the current object?
Maybe it'd just be simpler to only allow edits at higher zooms, and be
sure to make that correspond to a zoom threshold above which everything
is visible in goocanvas :)
> One nice thing one can do with this is to set the frisket transparency to e.g. 0xc0.
> This will give you a light view on everything outside the working area. But then
> again: This has a significant performance impact which sure isn't acceptible.
> But nice, anyway :-)
I tried that too - it looks really nice at ~80% opacity, but it's a bit
slow, true :)
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
More information about the talk