org.jdesktop.swingx.image
Class AbstractFilter

java.lang.Object
  extended by org.jdesktop.beans.AbstractBean
      extended by org.jdesktop.swingx.image.AbstractFilter
All Implemented Interfaces:
BufferedImageOp
Direct Known Subclasses:
ColorTintFilter, FastBlurFilter, GaussianBlurFilter, StackBlurFilter

public abstract class AbstractFilter
extends AbstractBean
implements BufferedImageOp

Provides an abstract implementation of the BufferedImageOp interface. This class can be used to created new image filters based on BufferedImageOp.


Constructor Summary
AbstractFilter()
           
 
Method Summary
 BufferedImage createCompatibleDestImage(BufferedImage src, ColorModel destCM)
          Creates a zeroed destination image with the correct size and number of bands.
abstract  BufferedImage filter(BufferedImage src, BufferedImage dest)
          Performs a single-input/single-output operation on a BufferedImage.
 Rectangle2D getBounds2D(BufferedImage src)
          Returns the bounding box of the filtered destination image.
 Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
          Returns the location of the corresponding destination point given a point in the source image.
 RenderingHints getRenderingHints()
          Returns the rendering hints for this operation.
 
Methods inherited from class org.jdesktop.beans.AbstractBean
addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, clone, fireIndexedPropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, fireVetoableChange, getPropertyChangeListeners, getPropertyChangeListeners, getVetoableChangeListeners, getVetoableChangeListeners, hasPropertyChangeListeners, hasVetoableChangeListeners, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractFilter

public AbstractFilter()
Method Detail

filter

public abstract BufferedImage filter(BufferedImage src,
                                     BufferedImage dest)
Description copied from interface: java.awt.image.BufferedImageOp
Performs a single-input/single-output operation on a BufferedImage. If the color models for the two images do not match, a color conversion into the destination color model is performed. If the destination image is null, a BufferedImage with an appropriate ColorModel is created.

An IllegalArgumentException may be thrown if the source and/or destination image is incompatible with the types of images $ allowed by the class implementing this filter.

Specified by:
filter in interface BufferedImageOp
Parameters:
src - The BufferedImage to be filtered
dest - The BufferedImage in which to store the results$
Returns:
The filtered BufferedImage.

getBounds2D

public Rectangle2D getBounds2D(BufferedImage src)
Returns the bounding box of the filtered destination image. An IllegalArgumentException may be thrown if the source image is incompatible with the types of images allowed by the class implementing this filter.

Specified by:
getBounds2D in interface BufferedImageOp
Parameters:
src - The BufferedImage to be filtered
Returns:
The Rectangle2D representing the destination image's bounding box.

createCompatibleDestImage

public BufferedImage createCompatibleDestImage(BufferedImage src,
                                               ColorModel destCM)
Creates a zeroed destination image with the correct size and number of bands. An IllegalArgumentException may be thrown if the source image is incompatible with the types of images allowed by the class implementing this filter.

Specified by:
createCompatibleDestImage in interface BufferedImageOp
Parameters:
src - The BufferedImage to be filtered
destCM - ColorModel of the destination. If null, the ColorModel of the source is used.
Returns:
The zeroed destination image.

getPoint2D

public Point2D getPoint2D(Point2D srcPt,
                          Point2D dstPt)
Returns the location of the corresponding destination point given a point in the source image. If dstPt is specified, it is used to hold the return value.

Specified by:
getPoint2D in interface BufferedImageOp
Parameters:
srcPt - the Point2D that represents the point in the source image
dstPt - The Point2D in which to store the result
Returns:
The Point2D in the destination image that corresponds to the specified point in the source image.

getRenderingHints

public RenderingHints getRenderingHints()
Returns the rendering hints for this operation.

Specified by:
getRenderingHints in interface BufferedImageOp
Returns:
The RenderingHints object for this BufferedImageOp