On 2/23/07 4:20 AM, in article
1172225881.431564.188960 / v33g2000cwv.googlegroups.com, "Artur Merke"
<am / artbot.de> wrote:

> I'm looking for an efficient way of image manipulation/rerendering
> using fximage from fxruby:

This discussion really, *really* belongs on the FXRuby mailing list. But
anyways...

> As image processing is quite computational expensive I would
> appriciate a more c language friendly interface ...
> 
> so for example
> 
> buf= MyPic.new
> 
> where MyPic is implemented in c using e.g.
> 
> typedef struct {
>     int w,h;
> 
>    //let it be the 4 bytes/ rgba pixel as required by fxruby
>    unsiged char * pixels;
>    ...
> } MyPic;

So instead of (or as alternative to) manipulating an array of FXColor, you'd
manipulate a Ruby string of bytes which has size 4*w*h? OK, I get it.

> This would solve the problem that after changing the MyPic buffer
> pixels the rerendering of the picture requires converting it to an
> array of FXColor first ...

True, but that pixels "array" (really, a String) would still need to be
converted to an array of FXColor in the C++ wrapper layer, because the FOX
library expects an array of FXColor values.

> Any suggestions? Is it already implemented somehow and I just don't
> see it?

No, you've got it right concerning the current approach. I would suggest
that you file a feature request about this, and we'll see if it can be added
in a future release of FXRuby:

    http://rubyforge.org/tracker/?atid=1226&group_id=300&func=browse

Thanks,

Lyle