Class PinchFilter

All Implemented Interfaces:
BufferedImageOp, Cloneable

public class PinchFilter extends TransformFilter
A filter which performs the popular whirl-and-pinch distortion effect.
  • Constructor Details

    • PinchFilter

      public PinchFilter()
  • Method Details

    • 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.
      See Also:
    • getAngle

      public float getAngle()
      Get the angle of twist.
      Returns:
      the angle in radians.
      See Also:
    • 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

      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:
    • 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

      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:
    • setCentre

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

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

      public void setRadius(float radius)
      Set the radius of the effect.
      Parameters:
      radius - the radius
      See Also:
    • getRadius

      public float getRadius()
      Get the radius of the effect.
      Returns:
      the radius
      See Also:
    • setAmount

      public void setAmount(float amount)
      Set the amount of pinch.
      Parameters:
      amount - the amount
      See Also:
    • getAmount

      public float getAmount()
      Get the amount of pinch.
      Returns:
      the amount
      See Also:
    • filter

      public BufferedImage filter(BufferedImage src, BufferedImage dst)
      Specified by:
      filter in interface BufferedImageOp
      Overrides:
      filter in class TransformFilter
    • 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 class TransformFilter
      Parameters:
      x - the X position of the pixel in the output image
      y - the Y position of the pixel in the output image
      out - the position of the pixel in the input image
    • toString

      public String toString()
      Overrides:
      toString in class Object