On 2016-02-07 13:25-0000 Phil Rosenberg wrote: > There is plenty of cool stuff there, but remembering that plplot is a library and not an application our job should be to enable transparency and allow the user to do that cool stuff - but that might form the basis of a demo.
Agreed. > For file output, it should just be like a transparent/semitransparent rectangle was drawn over the page as the first render object. Agreed, but I believe that is the current model in any case, i.e., it is a bug if a file device does not follow that model. > For drivers where the user provides the canvas, things should be just as for file output. This would allow users to draw over existing items - I'm thinking, e.g. A report program that includes text and provides this dc to plplot to draw plots on too. Agreed. > For interactive drivers where the user does not provide the canvas I am not sure what to do. In this case I think the most appropriate thing is to ignore transparency. I don't think making the window transparent is appropriate as it will just generate lots of driver and platform dependant inconsistencies. I do agree that just as with the IM display GUI, there would be external factors (such as bad compositing for your desktop display) that might or might not allow this to work, but sometimes it does work (i.e., the user can get a cool effect where they create an interactive plot on a semitransparent background where they could see through the plot to some details from the underlying desktop). This already happens for the display of file devices (at least those which conform to the above model). So if users have this desire, I don't think our library should get in the way just in case the user has external factors that allow this to work. And I don't think there is much downside to this approach; that is "not working due to external factors" here means that the background is opaque or a checkerboard rather than the plot does not work at all. > Regarding page clears. I feel that a new page is a new page and should not show previous pages in the background. Presumably this is dealt with by new files or document pages in many cases. If users want to simulate this effect they can do so themselves using plclear calls with semitransparent background colours. You are right. So never mind on that idea of mine of overlaying pages together with semintransparent background between. So I now think the interactive model should be that there is a canvas provided which could be an opaque rectangle of a given color, an image, text, or even (I argue above) the current desktop display. Anyhow, our library should not care a bit about the nature of that canvas and for each interactive page it should simply start with that canvas, lay down a semitransparent background, and then render the rest of the plot commands for the page. My impression is that currently our interactive device drivers don't follow this model at all for multiple pages and instead simply render a background (on the incorrect assumption it is always opaque) to overlay previous pages. So moving from this model to the one above is going to be a significant amount of work for each device driver, but I think such work would be extremely worthwhile if we come to consensus that the above interactive model is what we want. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140 _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel