adams.data.jai.transformer
Class Rotate

java.lang.Object
  extended by adams.core.ConsoleObject
      extended by adams.core.option.AbstractOptionHandler
          extended by adams.data.image.AbstractImageTransformer<BufferedImageContainer>
              extended by adams.data.jai.transformer.AbstractJAITransformer
                  extended by adams.data.jai.transformer.Rotate
All Implemented Interfaces:
CleanUpHandler, Debuggable, Destroyable, OptionHandler, SizeOfHandler, Serializable, Comparable

public class Rotate
extends AbstractJAITransformer

Rotates an image by a defined number of degrees.

Valid options are:

-D <int> (property: debugLevel)
    The greater the number the more additional info the scheme may output to
    the console (0 = off).
    default: 0
    minimum: 0
 
-angle <double> (property: angle)
    The angle, in degrees, to rotate the image by.
    default: 0.0
    minimum: 0.0
    maximum: 360.0
 
-origin-x <int> (property: originX)
    The X position of the origin; special values: -1 = left, -2 = center, -3
    = right.
    default: -2
    minimum: -3
 
-origin-y <int> (property: originY)
    The Y position of the origin; special values: -1 = top, -2 = center, -3
    = bottom.
    default: -2
    minimum: -3
 
-interpolation <NONE|BILINEAR|NEAREST> (property: interpolation)
    The type of interpolation to perform.
    default: BILINEAR
 
-background <java.awt.Color> (property: background)
    The color to use for the background of the rotated image.
    default: #000000
 

Version:
$Revision: 4753 $
Author:
fracpete (fracpete at waikato dot ac dot nz)
See Also:
Serialized Form

Nested Class Summary
static class Rotate.InterpolationType
          The types of interpolations.
 
Field Summary
protected  double m_Angle
          the angle to rotate the image by.
protected  Color m_Background
          the background color.
protected  Rotate.InterpolationType m_Interpolation
          the interpolation type.
protected  int m_OriginX
          the X origin.
protected  int m_OriginY
          the Y origin.
 
Fields inherited from class adams.core.option.AbstractOptionHandler
m_DebugLevel, m_OptionManager
 
Constructor Summary
Rotate()
           
 
Method Summary
 String angleTipText()
          Returns the tip text for this property.
 String backgroundTipText()
          Returns the tip text for this property.
 void defineOptions()
          Adds options to the internal list of options.
protected  BufferedImageContainer[] doTransform(BufferedImageContainer img)
          Performs no transformation at all, just returns the input.
 double getAngle()
          Returns the rotation angle.
 Color getBackground()
          Returns the color in use for the background.
 Rotate.InterpolationType getInterpolation()
          Returns the type of interpolation to perform.
 int getOriginX()
          Returns the X of the origin.
 int getOriginY()
          Returns the Y of the origin.
 String globalInfo()
          Returns a string describing the object.
 String interpolationTipText()
          Returns the tip text for this property.
 String originXTipText()
          Returns the tip text for this property.
 String originYTipText()
          Returns the tip text for this property.
 void setAngle(double value)
          Sets the rotation angle.
 void setBackground(Color value)
          Sets the color to use for the background.
 void setInterpolation(Rotate.InterpolationType value)
          Sets the type of interpolation to perform.
 void setOriginX(int value)
          Sets the X of the origin.
 void setOriginY(int value)
          Sets the Y of the origin.
 
Methods inherited from class adams.data.jai.transformer.AbstractJAITransformer
forCommandLine, forName, getTransformations
 
Methods inherited from class adams.data.image.AbstractImageTransformer
checkImage, cleanUp, compareTo, destroy, equals, shallowCopy, shallowCopy, transform
 
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, debug, debug, debugLevelTipText, finishInit, getDebugLevel, getOptionManager, initialize, isDebugOn, newOptionManager, reset, setDebugLevel, toCommandLine, toString
 
Methods inherited from class adams.core.ConsoleObject
getDebugging, getSystemErr, getSystemOut, sizeOf
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_Angle

protected double m_Angle
the angle to rotate the image by.


m_OriginX

protected int m_OriginX
the X origin.


m_OriginY

protected int m_OriginY
the Y origin.


m_Interpolation

protected Rotate.InterpolationType m_Interpolation
the interpolation type.


m_Background

protected Color m_Background
the background color.

Constructor Detail

Rotate

public Rotate()
Method Detail

globalInfo

public String globalInfo()
Returns a string describing the object.

Specified by:
globalInfo in class AbstractOptionHandler
Returns:
a description suitable for displaying in the gui

defineOptions

public void defineOptions()
Adds options to the internal list of options.

Specified by:
defineOptions in interface OptionHandler
Overrides:
defineOptions in class AbstractOptionHandler

setAngle

public void setAngle(double value)
Sets the rotation angle.

Parameters:
value - the angle (0-360)

getAngle

public double getAngle()
Returns the rotation angle.

Returns:
the angle

angleTipText

public String angleTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the gui

setOriginX

public void setOriginX(int value)
Sets the X of the origin.

Parameters:
value - the origin of X

getOriginX

public int getOriginX()
Returns the X of the origin.

Returns:
the origin of X

originXTipText

public String originXTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the gui

setOriginY

public void setOriginY(int value)
Sets the Y of the origin.

Parameters:
value - the origin of Y

getOriginY

public int getOriginY()
Returns the Y of the origin.

Returns:
the origin of Y

originYTipText

public String originYTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the gui

setInterpolation

public void setInterpolation(Rotate.InterpolationType value)
Sets the type of interpolation to perform.

Parameters:
value - the type

getInterpolation

public Rotate.InterpolationType getInterpolation()
Returns the type of interpolation to perform.

Returns:
the type

interpolationTipText

public String interpolationTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the gui

setBackground

public void setBackground(Color value)
Sets the color to use for the background.

Parameters:
value - the color

getBackground

public Color getBackground()
Returns the color in use for the background.

Returns:
the color

backgroundTipText

public String backgroundTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the gui

doTransform

protected BufferedImageContainer[] doTransform(BufferedImageContainer img)
Performs no transformation at all, just returns the input.

Original code for rotation taken from here, which was placed in public domain by Kas Thomas.

Specified by:
doTransform in class AbstractImageTransformer<BufferedImageContainer>
Parameters:
img - the image to process (can be modified, since it is a copy)
Returns:
the copy of the image


Copyright © 2012 University of Waikato, Hamilton, NZ. All Rights Reserved.