Package net.sourceforge.jiu.color
Class Invert
- java.lang.Object
-
- net.sourceforge.jiu.ops.Operation
-
- net.sourceforge.jiu.ops.ImageToImageOperation
-
- net.sourceforge.jiu.color.Invert
-
public class Invert extends ImageToImageOperation
Creates an inverted (negated) version of an image. This is done by subtracting each sample value of a channel from the maximum sample for that channel. The maximum sample for a channel is given byIntegerImage.getMaxSample(int)
. For paletted images, just the palette is treated that way. Supported image types:IntegerImage
. Input and output image can be the same object.Usage
There are two ways of using this class. Either create an Invert object and set all paramters yourself. This lets you reuse image objects or add a progress listener.Invert invert = new Invert(); invert.setInputImage(image); invert.addProgressListener(listener); // this is optional invert.process(); PixelImage invertedImage = invert.getOutputImage();
The other method is by sing the static convenience methodPixelImage invertedImage = Invert.invert(someImage);
You will have to catch the potential exceptions in both cases.- Author:
- Marco Schmidt
-
-
Constructor Summary
Constructors Constructor Description Invert()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static PixelImage
invert(PixelImage inputImage)
Helper method to return an inverted image from the argument image.private void
prepare(PixelImage in)
void
process()
Inverts the input image, reusing an output image if one has been specified.private void
process(IntegerImage in)
private void
process(Paletted8Image in)
-
Methods inherited from class net.sourceforge.jiu.ops.ImageToImageOperation
canInputAndOutputBeEqual, ensureImagesHaveSameResolution, ensureInputImageIsAvailable, ensureOutputImageResolution, getInputImage, getOutputImage, setCanInputAndOutputBeEqual, setInputImage, setOutputImage
-
Methods inherited from class net.sourceforge.jiu.ops.Operation
addProgressListener, addProgressListeners, getAbort, removeProgressListener, setAbort, setProgress, setProgress
-
-
-
-
Method Detail
-
invert
public static PixelImage invert(PixelImage inputImage) throws OperationFailedException
Helper method to return an inverted image from the argument image.- Parameters:
inputImage
- image to be inverted- Returns:
- new image object with inverted image
- Throws:
OperationFailedException
- on operation errors
-
prepare
private void prepare(PixelImage in) throws MissingParameterException, WrongParameterException
-
process
private void process(Paletted8Image in)
-
process
private void process(IntegerImage in)
-
process
public void process() throws MissingParameterException, WrongParameterException
Inverts the input image, reusing an output image if one has been specified. For paletted images, inverts the palette. For all other types, subtracts each sample of each channel from the maximum value of that channel.- Overrides:
process
in classOperation
- Throws:
MissingParameterException
- if the input image is missingWrongParameterException
- if any of the specified image parameters are unsupported or of the wrong width or height
-
-