com.jhlabs.image

Class FeedbackFilter

Implemented Interfaces:
BufferedImageOp, Cloneable

public class FeedbackFilter
extends AbstractBufferedImageOp

A filter which priduces a video feedback effect by repeated transformations.

Constructor Summary

FeedbackFilter()
Construct a FeedbackFilter.
FeedbackFilter(float distance, float angle, float rotation, float zoom)
Construct a FeedbackFilter.

Method Summary

BufferedImage
filter(BufferedImage src, BufferedImage dst)
float
getAngle()
Returns the angle of each iteration.
Point2D
getCentre()
Get the centre of the effect as a proportion of the image size.
float
getCentreX()
Get the centre of the effect in the X direction as a proportion of the image size.
float
getCentreY()
Get the centre of the effect in the Y direction as a proportion of the image size.
float
getDistance()
Get the distance to move on each iteration.
float
getEndAlpha()
Get the alpha value at the last iteration.
int
getIterations()
Get the number of iterations.
float
getRotation()
Returns the amount of rotation on each iteration.
float
getStartAlpha()
Get the alpha value at the first iteration.
float
getZoom()
Returns the amount to scale on each iteration.
void
setAngle(float angle)
Specifies the angle of each iteration.
void
setCentre(Point2D centre)
Set the centre of the effect as a proportion of the image size.
void
setCentreX(float centreX)
Set the centre of the effect in the X direction as a proportion of the image size.
void
setCentreY(float centreY)
Set the centre of the effect in the Y direction as a proportion of the image size.
void
setDistance(float distance)
Specifies the distance to move on each iteration.
void
setEndAlpha(float endAlpha)
Set the alpha value at the last iteration.
void
setIterations(int iterations)
Set the number of iterations.
void
setRotation(float rotation)
Specifies the amount of rotation on each iteration.
void
setStartAlpha(float startAlpha)
Set the alpha value at the first iteration.
void
setZoom(float zoom)
Specifies the amount to scale on each iteration.
String
toString()

Methods inherited from class com.jhlabs.image.AbstractBufferedImageOp

clone, createCompatibleDestImage, getBounds2D, getPoint2D, getRGB, getRenderingHints, setRGB

Constructor Details

FeedbackFilter

public FeedbackFilter()
Construct a FeedbackFilter.

FeedbackFilter

public FeedbackFilter(float distance,
                      float angle,
                      float rotation,
                      float zoom)
Construct a FeedbackFilter.
Parameters:
distance - the distance to move on each iteration
angle - the angle to move on each iteration
rotation - the amount to rotate on each iteration
zoom - the amount to scale on each iteration

Method Details

filter

public BufferedImage filter(BufferedImage src,
                            BufferedImage dst)

getAngle

public float getAngle()
Returns the angle of each iteration.
Returns:
the angle of each iteration.

getCentre

public Point2D getCentre()
Get the centre of the effect as a proportion of the image size.
Returns:
the center

getCentreX

public float getCentreX()
Get the centre of the effect in the X direction as a proportion of the image size.
Returns:
the center

getCentreY

public float getCentreY()
Get the centre of the effect in the Y direction as a proportion of the image size.
Returns:
the center

getDistance

public float getDistance()
Get the distance to move on each iteration.
Returns:
the distance

getEndAlpha

public float getEndAlpha()
Get the alpha value at the last iteration.
Returns:
the alpha value

getIterations

public int getIterations()
Get the number of iterations.
Returns:
the number of iterations

getRotation

public float getRotation()
Returns the amount of rotation on each iteration.
Returns:
the angle of rotation

getStartAlpha

public float getStartAlpha()
Get the alpha value at the first iteration.
Returns:
the alpha value

getZoom

public float getZoom()
Returns the amount to scale on each iteration.
Returns:
the zoom factor

setAngle

public void setAngle(float angle)
Specifies the angle of each iteration.
Parameters:
angle - the angle of each iteration.

setCentre

public void setCentre(Point2D centre)
Set the centre of the effect as a proportion of the image size.
Parameters:
centre - the center

setCentreX

public void setCentreX(float centreX)
Set the centre of the effect in the X direction as a proportion of the image size.
Parameters:
centreX - the center

setCentreY

public void setCentreY(float centreY)
Set the centre of the effect in the Y direction as a proportion of the image size.
Parameters:
centreY - the center

setDistance

public void setDistance(float distance)
Specifies the distance to move on each iteration.
Parameters:
distance - the distance

setEndAlpha

public void setEndAlpha(float endAlpha)
Set the alpha value at the last iteration.
Parameters:
endAlpha - the alpha value

setIterations

public void setIterations(int iterations)
Set the number of iterations.
Parameters:
iterations - the number of iterations

setRotation

public void setRotation(float rotation)
Specifies the amount of rotation on each iteration.
Parameters:
rotation - the angle of rotation

setStartAlpha

public void setStartAlpha(float startAlpha)
Set the alpha value at the first iteration.
Parameters:
startAlpha - the alpha value

setZoom

public void setZoom(float zoom)
Specifies the amount to scale on each iteration.
Parameters:
zoom - the zoom factor

toString

public String toString()