On 8 January 2014 08:59, J.F. Rick <self@je77.com> wrote:
In good news, I was able to implement the S/s functionality and both of my SVGs now load properly. I'll try some more soon and commit the changes once I have tested it a bit more.
In bad news, the cacheing was working properly, so I still suspect that rendering forms as a paint is too intensive to be practical for many applications. I'll try to evaluate it a bit more as I replace forms with SVGs. If the forms are causing the problem, then performance should noticeably increase.
I just did a little comparison: | surface time | surface := AthensCairoSurface extent: 200@200. surface drawDuring: [ :canvas| canvas setPaint: Color red. canvas setShape: (0@0 extent: 100@100). time := [ 10000 timesRepeat: [ canvas draw ] ] timeToRun. ]. time 0:00:00:00.115 ============= same as above but with: canvas setPaint: (ThemeIcons current backIcon). time 0:00:00:00.093 =========== same as above but with: (canvas setPaint: (ThemeIcons current backIcon)) repeat. time 0:00:00:00.956 as you can see, even in slowest case, the throughput is: 100*100*10000 = 100'000'000 pixels (texels) per second.
Cheers,
Jeff
-- Best regards, Igor Stasenko.