147 |
public void filterRGBPixels(int x, int y, int w, int h, int[] pixels, |
public void filterRGBPixels(int x, int y, int w, int h, int[] pixels, |
148 |
int offset, int scansize) |
int offset, int scansize) |
149 |
{ |
{ |
150 |
for (int xp = x; xp < (x + w); xp++) |
for (int yp = 0; yp < h; yp++) |
151 |
for (int yp = y; yp < (y + h); yp++) |
{ |
152 |
{ |
for (int xp = 0; xp < w; xp++) |
153 |
pixels[offset] = filterRGB(xp, yp, pixels[offset]); |
{ |
154 |
offset++; |
pixels[offset + xp] = filterRGB(xp + x, yp + y, pixels[offset + xp]); |
155 |
} |
} |
156 |
|
offset += scansize; |
157 |
|
} |
158 |
} |
} |
159 |
|
|
160 |
|
|
214 |
else |
else |
215 |
{ |
{ |
216 |
//FIXME: Store the filtered pixels in a separate temporary buffer? |
//FIXME: Store the filtered pixels in a separate temporary buffer? |
217 |
convertColorModelToDefault( x, y, w, h, model, pixels, offset, scansize ); |
convertColorModelToDefault( x, y, w, h, model, pixels, offset, scansize ); |
218 |
filterRGBPixels( x, y, w, h, pixels, offset, scansize ); |
filterRGBPixels( x, y, w, h, pixels, offset, scansize ); |
219 |
consumer.setPixels(x, y, w, h, ColorModel.getRGBdefault(), pixels, offset, scansize); |
consumer.setPixels(x, y, w, h, ColorModel.getRGBdefault(), pixels, offset, scansize); |
220 |
} |
} |
221 |
} |
} |
222 |
|
|