Hi All, I am trying to read exr image as RGB into a buffer. However,it seems to be read into an offset instead of being coping at the beginning. Therefore, when i view the image, it starts at offset say x=180, y= 3 for an image with Width=610 and height = 406. I am using the images provided in the OpenEXR website.
I am using the following code fragment to read. when i use the RGBA interface to read, it seem to work fine. Imf::InputFile imfFile("file.exr"); Box2i dw = imfFile.header().dataWindow(); int Width = dw.max.x - dw.min.x + 1; int Height = dw.max.y - dw.min.y + 1; int bpc = sizeof(half); int bpp = 3 * sizeof(half); int bpr = bpp * Width; Imf::FrameBuffer fb; fb.insert("R", Imf::Slice(Imf::HALF, p_Data + 0 * bpc - (dw.min.x + dw.min.y * Width) * bpp, bpp, bpr,1, 1, 0.0)); fb.insert("G", Imf::Slice(Imf::HALF, p_Data + 1 * bpc - (dw.min.x + dw.min.y * Width) * bpp, bpp, bpr, 1, 1, 0.0)); fb.insert("B", Imf::Slice(Imf::HALF, p_Data + 2 * bpc - (dw.min.x + dw.min.y * Width) * bpp, bpp, bpr, 1,1, 0.0)); imfFile.setFrameBuffer(fb); imfFile.readPixels (dw.min.y, dw.max.y); I must be doing something obviously wrong, but not able to spot it. any pointers reference highly appreciate it. Kugan
_______________________________________________ Openexr-devel mailing list Openexr-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/openexr-devel