ComponentDataBlitOp.INSTANCE.filter(src, dest);
if (src.getSampleModel () instanceof ComponentSampleModel && dest.getSampleModel () instanceof ComponentSampleModel)  ComponentDataBlitOp.INSTANCE.filter(src, dest); else {  int samples[] = src.getPixels (x, y, w, h, (int [])null); dest.setPixels (x, y, w, h, samples); }
  public WritableRaster copyData(WritableRaster dest)  {    if (dest == null)      dest = raster.createCompatibleWritableRaster();    int x = dest.getMinX();    int y = dest.getMinY();    int w = dest.getWidth();    int h = dest.getHeight();        // create a src child that has the right bounds...    WritableRaster src =      raster.createWritableChild(x, y, w, h, x, y,				 null  // same bands				 );        // Refer to ComponentDataBlitOp for optimized data blitting:    ComponentDataBlitOp.INSTANCE.filter(src, dest);    return dest;  }