Path: utzoo!utgpu!attcan!uunet!lll-winken!lll-lcc!ames!sgi!msc@ramoth.SGI.COM From: msc@ramoth.SGI.COM (Mark Callow) Newsgroups: comp.windows.news Subject: Re: retained canvases - application writers please read Summary: more on readcanvas and double buffering Message-ID: <24842@sgi.SGI.COM> Date: 12 Jan 89 23:32:11 GMT References: <24631@sgi.SGI.COM> <1154@murtoa.cs.mu.oz.au> <13402@bellcore.bellcore.com> Sender: daemon@sgi.SGI.COM Organization: Silicon Graphics, Inc., Mountain View, CA Lines: 36 In article <13402@bellcore.bellcore.com>, sjs@spectral.ctt.bellcore.com (Stan Switzer) writes: > Well, there ARE parentless canvases, but as Chris discovered and as I > have just confirmed, you can't create them with "newcanvas" or even > mutate a parented canvas into one. The only retained, parentless > canvases that I can find are the result of "readcanvas." > Interestingly, these canvases need never actually exist as bitmaps > since they can always be recreated from the original file (my guess is > that this is indeed what happens on SGI 4Sight and possibly even in > the Sun version). > I think you've hit on the reason for the exception noted in the "READ ME FIRST" document. I can breath a sigh of relief. We have it right. On both Sun and SGI implementations readcanvas reads the file into an offscreen pixrect structure. It then plugs that pixrect into a canvas data structure as the "retained part" of the canvas. This has to be imaged using imagecanvas. You can't map this kind of canvas. > What I would like to be able to do is to create a retained 1 plane > deep canvas that I can subsequently use for imagemaskcanvas > operations. Although it seems like there must be a way to do this, I > haveso far been unable to find it. > I agree that some way to have Retained canvases with different depths from the display would be nice. The spin demo is a good example of where you could use this. Since the server has code to support 1-bit and 8-bit deep canvases adding this feature wouldn't be hard. > Perhaps someone knows of a supported approach to do double buffering? We'd love an approach to double buffering since we have the hardware to support it and would be able to use that. Servers without double buffering hardware could use the /Retained canvas code to simulate it. If anyone has any proposals for a double buffering spec, let me know. -- -Mark