Subject: fast bitmaps

From: Don Hopkins <[email-masked]>
Date: Fri, 16 Oct 87 00:52:40 EST

One thing you might experiment with is having your client write out a
pixrect file, then hand the server the file name, which it can read
with 'readcanvas', and then use 'imagecanvas', which is much faster
than 'image'. (This kind of stuff is one reason that NFS mounted file
systems should be set up so that file names are consistant from
machine to machine.) (Be warned that /tmp is usually an exception!)

I agree that there really should be a good way of sending a canvas
over the wire efficiently. i.e. you should be able to have a pixrect
as a cps function argument, which shows up in the server as a canvas,
akin to the way readcanvas works.

	-Don

---

From: [email-masked] (David Singer)
Date: Mon, 9 Nov 87 00:42:17 EST

I've achieved better bitmap drawing/re-drawing by using buildimage and
then imagecanvas/imagemaskcanvas as appropriate, using the canvas as
a cache for the application bitmap.  Of course this is only useful if
you expect to display the same bitmap many times.  Also you may have
to cope with a bitmap editor (I do) and other events that should
invalidate your cache.  Finally you have to decide when to use
imagemask (typically when your source is 1-bit deep, and you want to
draw in the window's default colours), and when to use image (when your
source has true colours in it all by itself).  You should be aware that
1.0 has at least one and possibly several polarity bugs in imagemask and
imagemaskcanvas (i.e. pushing paint through the 1 bits instead of 0), and
for me this varied if the destination was mapped or not ...