code: public ComplexImg copyArea(int x, int y, int w, int h, ComplexImg dest, int destX, int destY) {
  		if(dest == null){
  			dest = new ComplexImg(w, h);
  		}
  		delegate.copyArea(x, y, w, h, dest.delegate, destX, destY);
  		if(dest.isSynchronizePowerSpectrum()){
  			dest.recomputePowerChannel();
  		}
  		return dest;
  	}
docs: See {@link ColorImg#copyArea(int, int, int, int, ColorImg, int, int)}
  
  @param x area origin in this image (x-coordinate)
  @param y area origin in this image (y-coordinate)
  @param w width of area
  @param h height of area
  @param dest destination image
  @param destX area origin in destination image (x-coordinate)
  @param destY area origin in destination image (y-coordinate)
  @return the destination image, or newly created image if destination was null.
  @throws IllegalArgumentException if the specified area is not within
  the bounds of this image or if the size of the area is not positive.