> XCircuit version 3.9 is up on the opencircuitdesign.com site! Oops, I forgot to also do the diff on Makefile.am and configure.in. On my system the fontconfig library is not linked. The attachment fixes this.
I now know for sure the configure has been rebuild. On my Opensude 12.3 system I still need to perform "autoreconf -fi" to be able to build everything. Also I noticed that when just compiling from scratch, in the Xlib version, no libraries appear anymore by default. > I would avoid a major paradigm shift at first; it's a good > long-term project, but it's going to involve a lot of coding. > It would probably be a better first step to see how much of the > redrawing can be replaced by copying blocks out of the pixmap. I played with this a little and I agree with you. There are lots of little tricks happening in xcircuit and I discovered that it will involve much more than just restructuring the code. Furthermore, from a code perspective I also struggle keeping the XOR drawing in place. I am now thinking indeed of using a pixmap for the 'fixed' elements and overdraw it with the edited elements. A quick test on my machine showed that this can be done in roughly 3 ms, for both X-primitives and cairo. So I am now trying this way. If I succeed this would mean that double buffering is obligatory and all XOR drawing stuff is removed. > It's possible that I'm missing hardware acceleration. I'm not sure > how to know if I am or am not getting slowed down by software > emulation, and I have not yet investigated that. Just as a reference, I added some timing around drawwindow #include void drawarea(xcWidget w, caddr_t clientdata, caddr_t calldata) { struct timespec t1, t2; float dt; clock_gettime( CLOCK_REALTIME, &t1 ); ..... clock_gettime( CLOCK_REALTIME, &t2 ); dt = (t2.tv_sec - t1.tv_sec) + (1e-9)*(t2.tv_nsec - t1.tv_nsec); printf("Redraw time: %f ms (%f fps)\n", dt * 1000., 1. / dt); } On my 4 year old laptop 2.3 GHz i3 with just the onboard intel hd 3000 graphics card I get around 60 ms redrawing time (eq. to 17 fps) when I open examples/diffamp_test3.ps, page 2. I also played around a little with buffering everything fixed and drawing the editing on top. With this I got around 2.5 ms redrawing time (eq. to 400 fps) when editing, regardless of the complexity underneath. Erik.
_______________________________________________ Xcircuit-dev mailing list Xcircuit-dev@opencircuitdesign.com http://www.opencircuitdesign.com/mailman/listinfo/xcircuit-dev