54 static const char MODULE[] =
"ossimRgbGridRemapEngine::remapTile";
55 if (traceExec())
CLOG <<
"entering..." << endl;
87 short pixel_buffer[3];
89 for (
double line=origin.line; line<origin.line+height; line+=1.0)
91 for (
double samp=origin.samp; samp<origin.samp+width; samp+=1.0)
103 pixel_buffer[0] = red_buf[offset] + (short) gridR(samp,line);
104 pixel_buffer[1] = grn_buf[offset] + (short) gridG(samp,line);
105 pixel_buffer[2] = blu_buf[offset] + (short) gridB(samp,line);
110 if (pixel_buffer[0]<0) red_buf[offset] = 0;
111 else if (pixel_buffer[0]>255) red_buf[offset] = 255;
112 else red_buf[offset] = pixel_buffer[0];
115 if (pixel_buffer[1]<0) grn_buf[offset] = 0;
116 else if (pixel_buffer[1]>255) grn_buf[offset] = 255;
117 else grn_buf[offset] = pixel_buffer[1];
120 if (pixel_buffer[2]<0) blu_buf[offset] = 0;
121 else if (pixel_buffer[2]>255) blu_buf[offset] = 255;
122 else blu_buf[offset] = pixel_buffer[2];
127 if (red_buf[offset] == (
ossim_uint8) null[0]) red_buf[offset]++;
128 if (grn_buf[offset] == (
ossim_uint8) null[1]) grn_buf[offset]++;
129 if (blu_buf[offset] == (
ossim_uint8) null[2]) blu_buf[offset]++;
146 if (traceExec())
CLOG <<
"returning..." << endl;
virtual ossim_uint32 getWidth() const
virtual ossim_uint32 getHeight() const
virtual const ossim_float64 * getNullPix() const
ossimDblGrid * getGrid(unsigned int index)
virtual ossimScalarType getScalarType() const
virtual const void * getBuf() const
unsigned char ossim_uint8
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)