com.jhlabs.image
Class GaussianFilter

java.lang.Object
  extended by com.jhlabs.image.AbstractBufferedImageOp
      extended by com.jhlabs.image.ConvolveFilter
          extended by com.jhlabs.image.GaussianFilter
All Implemented Interfaces:
ImageProcessorInterface, java.awt.image.BufferedImageOp, java.lang.Cloneable
Direct Known Subclasses:
GlowFilter, UnsharpFilter

public class GaussianFilter
extends ConvolveFilter

A filter which applies Gaussian blur to an image. This is a subclass of ConvolveFilter which simply creates a kernel with a Gaussian distribution for blurring.

Author:
Jerry Huxtable

Field Summary
 
Fields inherited from class com.jhlabs.image.ConvolveFilter
CLAMP_EDGES, WRAP_EDGES, ZERO_EDGES
 
Constructor Summary
GaussianFilter()
          Construct a Gaussian filter
GaussianFilter(float radius)
          Construct a Gaussian filter
 
Method Summary
static void convolveAndTranspose(java.awt.image.Kernel kernel, int[] inPixels, int[] outPixels, int width, int height, boolean alpha, int edgeAction)
           
 java.awt.image.BufferedImage filter(java.awt.image.BufferedImage src, java.awt.image.BufferedImage dst)
           
 float getRadius()
          Get the radius of the kernel.
static java.awt.image.Kernel makeKernel(float radius)
          Make a Gaussian blur kernel.
 void setRadius(float radius)
          Set the radius of the kernel, and hence the amount of blur.
 java.lang.String toString()
           
 
Methods inherited from class com.jhlabs.image.ConvolveFilter
convolve, convolve, convolveH, convolveHV, convolveV, createCompatibleDestImage, getBounds2D, getEdgeAction, getKernel, getPoint2D, getRenderingHints, getUseAlpha, setEdgeAction, setKernel, setUseAlpha
 
Methods inherited from class com.jhlabs.image.AbstractBufferedImageOp
getRGB, process, setRGB
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GaussianFilter

public GaussianFilter()
Construct a Gaussian filter


GaussianFilter

public GaussianFilter(float radius)
Construct a Gaussian filter

Parameters:
radius - blur radius in pixels
Method Detail

setRadius

public void setRadius(float radius)
Set the radius of the kernel, and hence the amount of blur. The bigger the radius, the longer this filter will take.

Parameters:
radius - the radius of the blur in pixels.

getRadius

public float getRadius()
Get the radius of the kernel.

Returns:
the radius

filter

public java.awt.image.BufferedImage filter(java.awt.image.BufferedImage src,
                                           java.awt.image.BufferedImage dst)
Specified by:
filter in interface java.awt.image.BufferedImageOp
Overrides:
filter in class ConvolveFilter

convolveAndTranspose

public static void convolveAndTranspose(java.awt.image.Kernel kernel,
                                        int[] inPixels,
                                        int[] outPixels,
                                        int width,
                                        int height,
                                        boolean alpha,
                                        int edgeAction)

makeKernel

public static java.awt.image.Kernel makeKernel(float radius)
Make a Gaussian blur kernel.


toString

public java.lang.String toString()
Overrides:
toString in class ConvolveFilter