
Hi Chris On Sun, Dec 5, 2010 at 8:20 AM, Chris Yuen <kizzx2+boost@gmail.com> wrote:
Hello Christian,
Thanks for your guidance! I took a look at semantic_at_c() and get_color() and they seem to do the trick!
Here's a couple of more questions. I've posted a compiling, annotated code at
Your code doesn't work since you overriding the first channel which is alpha when using argb. You should use get_color().
Below is the more elaborate description of my questions which can be found in the code:
1. Can I specify which channel to get in nth_channel_view()? For example, if I want to set the red channel to 255 for all the pixels, I would do gil::fil_pixels(gil::nth_channel_view(view, 0), 255). However, that only works if our view is rgb8 or bgr8, not argb8. Is there a way I can say something like gil::fill_pixels(gil::nth_channel_view(view, gil::find_channel_for_view(view, gil::red_t())), 255) ???
nth_channel_view does exactly what you ask for. Namely overriding the first channel. I don't think there is a channel_view where you can define the color type instead of a channel number. I think that could be quite useful. For now I would just stick with get_color() and a functor which does what you're trying to do.
2. This compiles
gil::gil_function_requires<gil::ImageViewConcept<int> >();
What do you mean? This shouldn't compile?
P.S. I am definitely interested in reviewing the extension! Apparently I'm a begginer in GIL. How would you like me to review and where should I write to?
Everyone can participate. Here is the announcement and a guide on what to do. http://mateusz.loskot.net/2010/11/30/formal-review-of-io-and-toolbox-extensi... Regards, Christian