All pastes #909920 Raw Edit

Takatski

public text v1 · immutable
·published 2008-02-19 16:55 UTC
rendered paste body

public Picture circleNegate(int centerx, int centery, int radius)
{
  int x, y;
  Pixel pixelObj;
  for(y=centery-radius; y<=centery+radius; y++)
  {
     for(x = centerx-radius; x <= centerx+radius; x++) 
     {
        if(Math.sqrt((int)((x-centerx)*(x-centerx) + (y-centery)*(y-centery))) <= radius)
        {
         pixelObj= this.getPixel(x,y);
         pixelObj.setRed(255-pixelObj.getRed());
         pixelObj.setBlue(255-pixelObj.getBlue());
         pixelObj.setGreen(255-pixelObj.getGreen());
     }
  }
} 
  return this;
}

public Picture makeGreen()
{
   Pixel[] pixelArray= getPixels();
  Pixel pixelObj= null;  
  int index=0; 
  while (index< pixelArray.length)
  {
    pixelObj= pixelArray[index];
    pixelObj.setRed(pixelObj.getRed()/2);
    pixelObj.setBlue(pixelObj.getBlue()/2);
    pixelObj.setGreen((int)(pixelObj.getGreen()*1.8));
    index++;
  }
  return this;
}

public Picture mirrorHorizontal()
{
  int midpoint=this.getHeight()/2;
  Pixel topPixel, bottomPixel;
  for(int y=0; y<midpoint; y++)
  {
    for(int x=0; x<this.getWidth(); x++)
    {
      topPixel=getPixel(x,y);
      bottomPixel=getPixel(this.getWidth() - 1 - x,y);
      bottomPixel.setColor(topPixel.getColor());
    }
  }
  return this;
}
public Picture greyscaleWithLuminance()
{
  Pixel[] pixelArray= getPixels();
  Pixel pixelObj= null;  
  int index=0;
  int intensity;
  while (index< pixelArray.length)
  {
    pixelObj= pixelArray[index];
    intensity=(int)(pixelObj.getRed()* 0.299 +  pixelObj.getGreen() * 0.587 + pixelObj.getBlue() * 0.114);
    pixelObj.setRed(intensity);
    pixelObj.setGreen(intensity);
    pixelObj.setBlue(intensity);
    index++;
  }
  return this;
}