railo.runtime.img.filter
Class GaussianFilter

java.lang.Object
  extended by railo.runtime.img.filter.AbstractBufferedImageOp
      extended by railo.runtime.img.filter.ConvolveFilter
          extended by railo.runtime.img.filter.GaussianFilter
All Implemented Interfaces:
BufferedImageOp, Cloneable, DynFiltering
Direct Known Subclasses:
GlowFilter, UnsharpFilter

public class GaussianFilter
extends ConvolveFilter
implements DynFiltering

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.


Field Summary
 
Fields inherited from class railo.runtime.img.filter.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(Kernel kernel, int[] inPixels, int[] outPixels, int width, int height, boolean alpha, boolean premultiply, boolean unpremultiply, int edgeAction)
          Blur and transpose a block of ARGB pixels.
 BufferedImage filter(BufferedImage src, BufferedImage dst)
           
 BufferedImage filter(BufferedImage src, Struct parameters)
           
 float getRadius()
          Get the radius of the kernel.
static 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.
 String toString()
           
 
Methods inherited from class railo.runtime.img.filter.ConvolveFilter
convolve, convolve, convolveH, convolveHV, convolveV, createCompatibleDestImage, getBounds2D, getEdgeAction, getKernel, getPoint2D, getPremultiplyAlpha, getRenderingHints, getUseAlpha, setEdgeAction, setKernel, setPremultiplyAlpha, setUseAlpha
 
Methods inherited from class railo.runtime.img.filter.AbstractBufferedImageOp
clone, getRGB, 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.
See Also:
getRadius()

getRadius

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

Returns:
the radius
See Also:
setRadius(float)

filter

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

convolveAndTranspose

public static void convolveAndTranspose(Kernel kernel,
                                        int[] inPixels,
                                        int[] outPixels,
                                        int width,
                                        int height,
                                        boolean alpha,
                                        boolean premultiply,
                                        boolean unpremultiply,
                                        int edgeAction)
Blur and transpose a block of ARGB pixels.

Parameters:
kernel - the blur kernel
inPixels - the input pixels
outPixels - the output pixels
width - the width of the pixel array
height - the height of the pixel array
alpha - whether to blur the alpha channel
edgeAction - what to do at the edges

makeKernel

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

Parameters:
radius - the blur radius
Returns:
the kernel

toString

public String toString()
Overrides:
toString in class ConvolveFilter

filter

public BufferedImage filter(BufferedImage src,
                            Struct parameters)
                     throws PageException
Specified by:
filter in interface DynFiltering
Overrides:
filter in class ConvolveFilter
Throws:
PageException


Copyright © 2012 Railo