QImage ScopedPixelBuffer::getQImage(
   unsigned int width, unsigned int height, QColor& bg_color)
 {
   QImage Hud = getQImage(width, height);
   for (unsigned int i = 0; i < width; i++) {
     for (unsigned int j = 0; j < height; j++) {
       Hud.setPixel(i, j, bg_color.rgba());
     }
   }
   return Hud;
 }
void MainWindow::changeWC(double w,double c)
{
	P2 img(image.getHeight(),image.getWidth(),image.getLevel());
	
	for(int i=0;i<image.getHeight();i++)
	{
		for(int j=0;j<image.getWidth();j++)
		{		
			int x = image.getPixel(i,j);	
			if(x <= c - 0.5 - (w-1)/2)
				img.setPixel(i,j,0);
			else if (x > c - 0.5 + (w-1)/2)
				img.setPixel(i,j,image.getLevel()-1);
			else
				img.setPixel(i,j,((x - (c - 0.5)) / (w-1) + 0.5) * (image.getLevel()-1));
		}
	}	

	viewer->setImage(getQImage(img));
}
 QImage ScopedPixelBuffer::getQImage(OverlayObject& overlay,
                                     QColor& bg_color)
 {
   return getQImage(overlay.getTextureWidth(), overlay.getTextureHeight(),
                    bg_color);
 }
 QImage ScopedPixelBuffer::getQImage(OverlayObject& overlay)
 {
   return getQImage(overlay.getTextureWidth(), overlay.getTextureHeight());
 }