SourceForge logo
SourceForge logo
Menu

Re: [matplotlib-devel] [Fwd: [wxPython-users] Re: using wxImage in C++ python extension]

On 08/31/06 13:43, Christopher Barker wrote:
> Ken McIvor wrote:
> 
> a wxBitmap is the same format as the native rendering system. While most 
> systems use 24b RGB (or 32b RGBA), people can still run displays at 
> 16bpp or whatever, so it's still needed.
I can understand why it's still necessary, although it's nice to sometimes 
pretend that everyone's running 24-bit color displays. I hope I didn't sound 
too judgemental!
>>I don't think we're going to be able to get performance similar to that 
>>of the accelerator using straight Python code
>
> But whether it's Python or C++, you still need to do the Image->Bitmap 
> conversion -- so if we can get rid of the data copying from Agg buffer 
> to wxImage in Python, we don't need C++.
I think we got some wires crossed at some point in the conversation, although 
it could be that I'm wearing the Stupid Hat today. 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.
> And it has. For wxPython 2.7 (and now in CVS) there are methods for 
> dumping 32 bit RGBA data directly into a wxBitmap with no copying, if 
> the data source is a Python Buffer object. I think I posted a note about 
> this here yesterday.
Yes, you did mention it. I agree completely with this analysis of the 
situation. When I replied I wasn't thinking in terms of wxPython 2.7.
> To really get it to work, the 24bit RGB Agg buffer needs to be a Python 
> Buffer object -- is it now? I'm sorry I don't have the time to mess with 
> this now -- maybe some day.
I guess Guido lets John borrow his time machine, because RendererAgg appears 
to already have a buffer_rgba() method.
> You can alpha composite into a non-alpha background. You just lose the 
> alpha there, so that the background couldn't be alpha-composited onto 
> anything else -- but does it ever need to be?
I thought that the buffer's accumulated alpha played a role in compositing new 
pixels onto it, but I apparently misunderstood. It must be time to read 
"Compositing Digital Images. Anyway, if the buffer's alpha channel isn't 
used, then the whole situation does seem a bit odd. Could the information be 
retained for PNGs or something?
> However, there is something to be said for just using alpha everywhere, 
> and as we'll soon be able to dump RGBA data straight into a wx.Bitmap, 
> this should work great.
Yes, it will be a great improvement over the current situation.
Ken

View entire thread

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





Briefly describe the problem (required):
Upload screenshot of ad (required):
Select a file, or drag & drop file here.
Screenshot instructions:

Click URL instructions:
Right-click on the ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Ad destination/click URL:

AltStyle によって変換されたページ (->オリジナル) /