On Monday 21 January 2008, Werner Smekal wrote: > Hi Torquil, > > thanks again for this report. I made changes to wxwidgets driver which > should at least partially resolve your problems. > > > /* Driver wxwidgets: Much slower than xcairo when not > > including plsetopt("drvopt", "smooth=0"), else about as > > as fast as xcairo, maybe a tad faster. > > If you don't set the smooth option to 0 (it's set to 1 by default), > the font will be plotted antialized. This looks rather pretty, but is > very slow compared to the non-antialized case. So in your case, set > smooth always to 0. You should also be able to improve the plotting > speed a little bit, by setting the antialized option to 0 (it's also > set to 1 by default) - here the lines, etc. are plotted antialized, > looks very nice, but has small impact on the speed (about 10-20%). > Only in case your plplot version supports this option. > > > With pgclear() as below: it only plots some of the box plus > > the tickmark-numbers, very flickering, with no > > lines inside the plot. Only the first frame has a clearly > > visible box (a different problem that is fixed using the > > smooth=0 option). Using -db has no effect. > > There is no db option in the wxwidgets driver, since it's used by > default. In order to improve the time needed for a plot, the wxWidgets > driver plots into a memory canvas and only updates the window after > about 5000 commands (lines, fills, etc.). It also doesn't copy the > whole window, only parts of it, which changed. The reason why you > didn't see much when using pgclear() was, that I didn't update the > window before I cleared it :) Therefore much of what was plotted never > made it to the screen :). > > Anyway, I commited the change to the svn repository and if you compile > plplot from the repository, there should be now no flickering and nice > animation of your plot.
Thanks Werner! I have just tried todays SVN. I now always use smooth=0 with wxwidgets. pgclear() now works. I can choose between enclosing each plot iteration with plbop()....pleop(), or using plclear(). There is no longer any flickering in the surrounding box. When using plclear() between each plot there is some flickering in the elements that I can see. But I no longer see the "x" and "y", and other changing text that I write with pllab("x", "y", "top"); and plmtex(...) (plmtex writes a number that increases with the iterations of the simulation), but I _can_ see the text "top" at the top of the plot. It also flickers along with the tickmark-numbers. When using plbop().....pleop() around each plot iteration, I can see all the text that should be there, but with quite alot of flickering in them. As I said, the surrounding box does not flicker in any of these cases. But there is another problem that has arisen: Now pgclear() doesn't work with the xwin-driver + double-buffering. Only part of the box around the plot is then displayed. For xwin I now have to enclose the plot commands in plbop().......pleop() to get a correct plot. I'm not quite sure but I think it worked before with only plclear() and xwin+db. -Torquil ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Plplot-general mailing list Plplot-general@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-general