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 :) -- Andrew Chadwick
FRISKET_MULT VSZ RSS N/A (unpatched) 85512 24412 N/A (unpatched) 85512 24412 1.0 85516 24416 1.0 85516 24416 2.0 85516 24432 2.0 85516 24416 3.0 85516 24420 3.0 85516 24416 4.0 85516 24420 4.0 85516 24416 5.0 85516 24396 5.0 85516 24412 6.0 85516 24416 6.0 85516 24416 7.0 85516 24416 8.0 85516 24420 10.0 85516 24412 15.0 85516 24424 20.0 85516 24420
_______________________________________________ talk mailing list talk@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk