Class MorphologyRable8Bit
- java.lang.Object
-
- org.apache.batik.ext.awt.image.renderable.AbstractRable
-
- org.apache.batik.ext.awt.image.renderable.MorphologyRable8Bit
-
- All Implemented Interfaces:
java.awt.image.renderable.RenderableImage
,Filter
,MorphologyRable
public class MorphologyRable8Bit extends AbstractRable implements MorphologyRable
Implements a Morphology operation, where the kernel size is defined by radius along the x and y axis.
-
-
Field Summary
-
Fields inherited from class org.apache.batik.ext.awt.image.renderable.AbstractRable
props, srcs, stamp
-
-
Constructor Summary
Constructors Constructor Description MorphologyRable8Bit(Filter src, double radiusX, double radiusY, boolean doDilation)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.image.RenderedImage
createRendering(java.awt.image.renderable.RenderContext rc)
java.awt.geom.Rectangle2D
getBounds2D()
Pass-through: returns the source's boundsjava.awt.Shape
getDependencyRegion(int srcIndex, java.awt.geom.Rectangle2D outputRgn)
Returns the region of input data is is required to generate outputRgn.java.awt.Shape
getDirtyRegion(int srcIndex, java.awt.geom.Rectangle2D inputRgn)
This calculates the region of output that is affected by a change in a region of input.boolean
getDoDilation()
Returns whether the operation is "dilation" or not("erosion")double
getRadiusX()
Returns the radius along the x-axis, in user space.double
getRadiusY()
Returns the radius along the y-axis, in user space.Filter
getSource()
Returns the source to be offset.void
setDoDilation(boolean doDilation)
The switch that determines if the operation is to "dilate" or "erode".void
setRadiusX(double radiusX)
The radius along the x axis, in user space.void
setRadiusY(double radiusY)
The radius along the y axis, in user space.void
setSource(Filter src)
Sets the source to be offset.-
Methods inherited from class org.apache.batik.ext.awt.image.renderable.AbstractRable
createDefaultRendering, createScaledRendering, getHeight, getMinX, getMinY, getProperty, getPropertyNames, getSources, getTimeStamp, getWidth, init, init, init, init, isDynamic, touch
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.batik.ext.awt.image.renderable.Filter
getTimeStamp
-
-
-
-
Constructor Detail
-
MorphologyRable8Bit
public MorphologyRable8Bit(Filter src, double radiusX, double radiusY, boolean doDilation)
-
-
Method Detail
-
getSource
public Filter getSource()
Returns the source to be offset.- Specified by:
getSource
in interfaceMorphologyRable
-
setSource
public void setSource(Filter src)
Sets the source to be offset.- Specified by:
setSource
in interfaceMorphologyRable
- Parameters:
src
- image to offset.
-
getBounds2D
public java.awt.geom.Rectangle2D getBounds2D()
Pass-through: returns the source's bounds- Specified by:
getBounds2D
in interfaceFilter
- Overrides:
getBounds2D
in classAbstractRable
-
setRadiusX
public void setRadiusX(double radiusX)
The radius along the x axis, in user space.- Specified by:
setRadiusX
in interfaceMorphologyRable
- Parameters:
radiusX
- should be greater than zero.
-
setRadiusY
public void setRadiusY(double radiusY)
The radius along the y axis, in user space.- Specified by:
setRadiusY
in interfaceMorphologyRable
- Parameters:
radiusY
- should be greater than zero.
-
setDoDilation
public void setDoDilation(boolean doDilation)
The switch that determines if the operation is to "dilate" or "erode".- Specified by:
setDoDilation
in interfaceMorphologyRable
- Parameters:
doDilation
- do "dilation" when true and "erosion" when false
-
getDoDilation
public boolean getDoDilation()
Returns whether the operation is "dilation" or not("erosion")- Specified by:
getDoDilation
in interfaceMorphologyRable
-
getRadiusX
public double getRadiusX()
Returns the radius along the x-axis, in user space.- Specified by:
getRadiusX
in interfaceMorphologyRable
-
getRadiusY
public double getRadiusY()
Returns the radius along the y-axis, in user space.- Specified by:
getRadiusY
in interfaceMorphologyRable
-
createRendering
public java.awt.image.RenderedImage createRendering(java.awt.image.renderable.RenderContext rc)
- Specified by:
createRendering
in interfacejava.awt.image.renderable.RenderableImage
-
getDependencyRegion
public java.awt.Shape getDependencyRegion(int srcIndex, java.awt.geom.Rectangle2D outputRgn)
Returns the region of input data is is required to generate outputRgn.- Specified by:
getDependencyRegion
in interfaceFilter
- Overrides:
getDependencyRegion
in classAbstractRable
- Parameters:
srcIndex
- The source to do the dependency calculation for.outputRgn
- The region of output you are interested in generating dependencies for. The is given in the user coordiate system for this node.- Returns:
- The region of input required. This is in the user coordinate system for the source indicated by srcIndex.
-
getDirtyRegion
public java.awt.Shape getDirtyRegion(int srcIndex, java.awt.geom.Rectangle2D inputRgn)
This calculates the region of output that is affected by a change in a region of input.- Specified by:
getDirtyRegion
in interfaceFilter
- Overrides:
getDirtyRegion
in classAbstractRable
- Parameters:
srcIndex
- The input that inputRgn reflects changes in.inputRgn
- the region of input that has changed, used to calculate the returned shape. This is given in the user coordinate system of the source indicated by srcIndex.- Returns:
- The region of output that would be invalid given a change to inputRgn of the source selected by srcIndex. this is in the user coordinate system of this node.
-
-