Package com.jhlabs.image
Class WaterFilter
- java.lang.Object
-
- com.jhlabs.image.AbstractBufferedImageOp
-
- com.jhlabs.image.TransformFilter
-
- com.jhlabs.image.WaterFilter
-
- All Implemented Interfaces:
java.awt.image.BufferedImageOp
,java.lang.Cloneable
public class WaterFilter extends TransformFilter
A filter which produces a water ripple distortion.
-
-
Field Summary
-
Fields inherited from class com.jhlabs.image.TransformFilter
BILINEAR, CLAMP, edgeAction, interpolation, NEAREST_NEIGHBOUR, originalSpace, RGB_CLAMP, transformedSpace, WRAP, ZERO
-
-
Constructor Summary
Constructors Constructor Description WaterFilter()
-
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
getAmplitude()
Get the amplitude of the ripples.java.awt.geom.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
getPhase()
Get the phase of the ripples.float
getRadius()
Get the radius of the effect.float
getWavelength()
Get the wavelength of the ripples.void
setAmplitude(float amplitude)
Set the amplitude of the ripples.void
setCentre(java.awt.geom.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
setPhase(float phase)
Set the phase of the ripples.void
setRadius(float radius)
Set the radius of the effect.void
setWavelength(float wavelength)
Set the wavelength of the ripples.java.lang.String
toString()
protected void
transformInverse(int x, int y, float[] out)
Inverse transform a point.-
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, stringToColor
-
-
-
-
Method Detail
-
setWavelength
public void setWavelength(float wavelength)
Set the wavelength of the ripples.- Parameters:
wavelength
- the wavelength- See Also:
getWavelength()
-
getWavelength
public float getWavelength()
Get the wavelength of the ripples.- Returns:
- the wavelength
- See Also:
setWavelength(float)
-
setAmplitude
public void setAmplitude(float amplitude)
Set the amplitude of the ripples.- Parameters:
amplitude
- the amplitude- See Also:
getAmplitude()
-
getAmplitude
public float getAmplitude()
Get the amplitude of the ripples.- Returns:
- the amplitude
- See Also:
setAmplitude(float)
-
setPhase
public void setPhase(float phase)
Set the phase of the ripples.- Parameters:
phase
- the phase- See Also:
getPhase()
-
getPhase
public float getPhase()
Get the phase of the ripples.- Returns:
- the phase
- See Also:
setPhase(float)
-
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- See Also:
getCentreX()
-
getCentreX
public float getCentreX()
Get the centre of the effect in the X direction as a proportion of the image size.- Returns:
- the center
- See Also:
setCentreX(float)
-
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- See Also:
getCentreY()
-
getCentreY
public float getCentreY()
Get the centre of the effect in the Y direction as a proportion of the image size.- Returns:
- the center
- See Also:
setCentreY(float)
-
setCentre
public void setCentre(java.awt.geom.Point2D centre)
Set the centre of the effect as a proportion of the image size.- Parameters:
centre
- the center- See Also:
getCentre()
-
getCentre
public java.awt.geom.Point2D getCentre()
Get the centre of the effect as a proportion of the image size.- Returns:
- the center
- See Also:
setCentre(java.awt.geom.Point2D)
-
setRadius
public void setRadius(float radius)
Set the radius of the effect.- Parameters:
radius
- the radius. Minimum value: 0- See Also:
getRadius()
-
getRadius
public float getRadius()
Get the radius of the effect.- Returns:
- the radius
- See Also:
setRadius(float)
-
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)
Description copied from class:TransformFilter
Inverse transform a point. This method needs to be overriden by all subclasses.- Specified by:
transformInverse
in classTransformFilter
- Parameters:
x
- the X position of the pixel in the output imagey
- the Y position of the pixel in the output imageout
- the position of the pixel in the input image
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-