>>>>> "Eric" == Eric Firing <[EMAIL PROTECTED]> writes:
Eric> Maybe, but I am not sure it is so simple as that. At the
Eric> very least, it illustrates the fact that all the possible
Eric> combinations of rgb with separate alpha, rgba, faces, edges
Eric> etc. is confusing, and that because of the organic growth of
Yes, this is the result of code creep. Early versions of matplotlib
(GTK only backend) only supported rgb. Later we added an alpha
channel and put it in the graphics context and left the rgb tuples
alone. Later still IIRC we added support rgba colors, while leaving
the alpha in the gc. Thus we have a redundant and somewhat ill
defined alpha. The older drawing methods (draw_line, draw_poly) get
their color as rgb and their alpha from gc. The comparatively newer
ones (draw_poly_collection) always uses the rgba and ignore the
gc.alpha. Definitely confusing, suboptimal, and in need of
rationalization.
Eric> mpl combined with its support for backends with differing
Eric> capabilities, there is not a single clear pattern of
Eric> behavior. Which means we have more cleanup work to do at the
Eric> very least. To be more ambitious (as if there weren't
Eric> already enough pending grand ideas), some reconsideration
Eric> and possible modification of the drawing model would be
Eric> nice.
Indeed, lots of grand ideas. I've been toying with the idea of trying
to organize an mpl sprint in some fabulous destination, and trying to
raise funds for several developers via donations. Sometime in the
early summer perhaps.
Eric> For the backends, maybe it would be easier to let (-1,*,*,*)
Eric> mean "don't draw"; if it has to be interpreted by C-code in
Eric> some backends, always having a tuple and simply checking for
Eric> a negative first element is much easier than having to check
Eric> for None in place of a tuple.
If we are already passing in rgba, and are expecting the backends to
inspect it, wouldn't it make more sense for them to simply check for
rgba[-1]>0, as we do in backend_bases?
JDH
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Matplotlib-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-users