Package com.jhlabs.image
Class TwirlFilter
- java.lang.Object
-
- com.jhlabs.image.AbstractBufferedImageOp
-
- com.jhlabs.image.TransformFilter
-
- com.jhlabs.image.TwirlFilter
-
- All Implemented Interfaces:
java.awt.image.BufferedImageOp
,java.lang.Cloneable
public class TwirlFilter extends TransformFilter
A Filter which distorts an image by twisting it from the centre out. The twisting is centred at the centre of the image and extends out to the smallest of the width and height. Pixels outside this radius are unaffected.
-
-
Field Summary
-
Fields inherited from class com.jhlabs.image.TransformFilter
BILINEAR, CLAMP, edgeAction, interpolation, NEAREST_NEIGHBOUR, originalSpace, transformedSpace, WRAP, ZERO
-
-
Constructor Summary
Constructors Constructor Description TwirlFilter()
Construct a TwirlFilter with no distortion.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.image.BufferedImage
filter(java.awt.image.BufferedImage src, java.awt.image.BufferedImage dst)
float
getAngle()
Get the angle of twist.java.awt.geom.Point2D
getCentre()
float
getCentreX()
float
getCentreY()
float
getRadius()
void
setAngle(float angle)
Set the angle of twirl in radians.void
setCentre(java.awt.geom.Point2D centre)
void
setCentreX(float centreX)
void
setCentreY(float centreY)
void
setRadius(float radius)
java.lang.String
toString()
protected void
transformInverse(int x, int y, float[] out)
-
Methods inherited from class com.jhlabs.image.TransformFilter
filterPixelsNN, getEdgeAction, getInterpolation, setEdgeAction, setInterpolation, transformSpace
-
Methods inherited from class com.jhlabs.image.AbstractBufferedImageOp
clone, createCompatibleDestImage, getBounds2D, getPoint2D, getRenderingHints, getRGB, setRGB
-
-
-
-
Method Detail
-
setAngle
public void setAngle(float angle)
Set the angle of twirl in radians. 0 means no distortion.- Parameters:
angle
- the angle of twirl. This is the angle by which pixels at the nearest edge of the image will move.
-
getAngle
public float getAngle()
Get the angle of twist.- Returns:
- the angle in radians.
-
setCentreX
public void setCentreX(float centreX)
-
getCentreX
public float getCentreX()
-
setCentreY
public void setCentreY(float centreY)
-
getCentreY
public float getCentreY()
-
setCentre
public void setCentre(java.awt.geom.Point2D centre)
-
getCentre
public java.awt.geom.Point2D getCentre()
-
setRadius
public void setRadius(float radius)
-
getRadius
public float getRadius()
-
filter
public java.awt.image.BufferedImage filter(java.awt.image.BufferedImage src, java.awt.image.BufferedImage dst)
- Specified by:
filter
in interfacejava.awt.image.BufferedImageOp
- Overrides:
filter
in classTransformFilter
-
transformInverse
protected void transformInverse(int x, int y, float[] out)
- Specified by:
transformInverse
in classTransformFilter
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-