John Hunter wrote:
> It is useful to store the final pixel buffer (eg in a PNG) as RGBA 
> because some people like to have some parts of their figure 
> transparent to composite the figure with other images.

fair enough, and that's probably a really cool feature when you need it!

ken wrote:

> I was talking about the image-from-a-buffer business not helping us
> with WX 2.4/2.6 due to the RGBA to RGB conversion.

But it looks like RendererAgg has this a agg.tostring_rgb() method, so 
we should be able to do change :

image.SetData(agg.tostring_rgb())

to

image.SetDataBuffer(agg.tostring_rgb())

If we make sure to keepthe string around. I haven't looked at your C++ 
code, but does it do something faster than RendererAgg.tostring_rgb() ?

Another thing that would be nice (for all Agg back-ends, I imagine), is 
if we could replace this:

         # agg => rgb -> image => bitmap => clipped bitmap => image
         return wx.ImageFromBitmap(_clipped_image_as_bitmap(image, bbox))

with a RendererAgg._clipped_tostring_rgb(bbox)

So that we don't copy a bunch of RGB data we don't need.

even if we don't do that, I think

_clipped_image_as_bitmap()

could use wx.Image.GetSubImage(), rather than creating a bimtp of the 
whole thing and blitting. untested code:

def _clipped_image_as_bitmap(image, bbox):
     """
     Convert the region of a wx.Image described by bbox to a wx.Bitmap.
     """
     l, b, width, height = bbox.get_bounds()

     return wx.BitmapFromImage(image.GetSubImage(wxRect((l,b),(w,h))))


 > RendererAgg appears to already have a buffer_rgba() method.

So we're all set for wxPython 2.7 -- very nice! I hope it doesn't make a 
copy.

Is there a numpy_array_rgba method -- that could be nice, and would work 
as a buffer, too. Maybe when we are ready to dump Numeric and numarray.

-Chris

-- 
Christopher Barker, Ph.D.
Oceanographer
                                                
NOAA/OR&R/HAZMAT         (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

[EMAIL PROTECTED]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Reply via email to