cdox.util.image
Class Brightness
java.lang.Object
java.util.Observable
cdox.util.image.CorrectorSlider
cdox.util.image.Brightness
- All Implemented Interfaces:
- javax.swing.event.ChangeListener, java.util.EventListener, ImageCorrector
- public class Brightness
- extends CorrectorSlider
- implements ImageCorrector
This class brightens a BufferedImage. It uses a lookupTable to do so.
To use this class you can call one of its two constructors. If you've designed your own
Jslider classes you can use the constructor which takes a float-value. You than can use
the setValue(float val) method to set the value to work with. And than call the filter
method to filter the BufferedImage.If value == 0f the original (source-image) will be
returned.
- Version:
- May 22nd 2002
- Author:
- Rutger Bezema, Andreas Schmitz
- See Also:
CorrectorSlider
Constructor Summary |
Brightness(float val)
This constructor creates a new Brighten Object with its initial-Value set to val. |
Brightness(java.util.Observer obs,
java.lang.String paneTitle)
This constructor creates a new Brighten Object, with a JSlider in a JPanel with a
titledBorder set with the name paneTitle. |
Method Summary |
java.awt.image.BufferedImage |
filter(java.awt.image.BufferedImage source,
java.awt.image.BufferedImage dest)
The actual filtering is done in this method defined in ImageCorrector. |
Methods inherited from class java.util.Observable |
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Brightness
public Brightness(java.util.Observer obs,
java.lang.String paneTitle)
- This constructor creates a new Brighten Object, with a JSlider in a JPanel with a
titledBorder set with the name paneTitle. The values of the JSlider are standardly
min=-100, max = 100, initValue=0, spacings=10, textatSpacing=25,
graptogrid=false. The Observer is called when the JSlider is moved. This Observer
could be a preview pane or anything else.
- Parameters:
obs
- The Observer to handle the BufferedImage.paneTitle
- the title of the titledBorder of the JPane surrounding the JSlider.- See Also:
CorrectorSlider.CorrectorSlider(Observer, String, int, int, int, int, int, boolean).
Brightness
public Brightness(float val)
- This constructor creates a new Brighten Object with its initial-Value set to val. It
has no JSlider and the value of this class (to work with) should be set by calling
setValue(float val).
- Parameters:
val
- the initial float value.- See Also:
CorrectorSlider.CorrectorSlider(float)
,
CorrectorSlider.setValue(float)
filter
public java.awt.image.BufferedImage filter(java.awt.image.BufferedImage source,
java.awt.image.BufferedImage dest)
The actual filtering is done in this method defined in ImageCorrector. It uses a
ShortLookupTable to brighten up all the four chanels (Red, Green, Blue,
Alpha). First the short-array is filled with the normal-value + value (set by the
JSlider or setValue(float val)). After that this short-array is copied in a
2-dimensional-short-array, which represent the color-chanels. With BufferedImageOp a
new LookupOp is done, which will be used to filter the source BufferedImage.
To make sure the source-BufferedImage can be "brightened" the image is redrawn on
a new BufferedImage which will be filtered. If the destination BufferedImage is
null, a new BufferedImage is returned, if not it must have the same height and width
as the source-BufferedImage. If not a new BufferedImage is returned.
- Specified by:
filter
in interface ImageCorrector
- Parameters:
source
- the BufferedImage to be filtered,dest
- the Destination-BufferedImage with the same height and width as Source,
and which may be null.
- Returns:
- the filtered BufferedImage.
- See Also:
ImageCorrector
,
CorrectorSlider.setValue(float)