## org.apache.batik.ext.awt.image.renderable
Class MorphologyRable8Bit

    java.lang.Object
      org.apache.batik.ext.awt.image.renderable.AbstractRable
          org.apache.batik.ext.awt.image.renderable.MorphologyRable8Bit

All Implemented Interfaces:
  Filter, MorphologyRable, java.awt.image.renderable.RenderableImage

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`

Fields inherited from interface java.awt.image.renderable.RenderableImage
`HINTS_OBSERVED`

Constructor Summary
`MorphologyRable8Bit(Filter src, double radiusX, double radiusY, boolean doDilation)`

Method Summary
`java.awt.image.RenderedImage` `createRendering(java.awt.image.renderable.RenderContext rc)`
`java.awt.geom.Rectangle2D` `getBounds2D()` Pass-through: returns the source's bounds
`java.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`

Methods inherited from interface java.awt.image.renderable.RenderableImage
`createDefaultRendering, createScaledRendering, getHeight, getMinX, getMinY, getProperty, getPropertyNames, getSources, getWidth, isDynamic`

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 interface `MorphologyRable`

### setSource

    public void setSource(Filter src)

  Sets the source to be offset.

  Specified by:
    `setSource` in interface `MorphologyRable`
  Parameters:
    `src` - image to offset.

### getBounds2D

    public java.awt.geom.Rectangle2D getBounds2D()

  Pass-through: returns the source's bounds

  Specified by:
    `getBounds2D` in interface `Filter`
  Overrides:
    `getBounds2D` in class `AbstractRable`

### setRadiusX

    public void setRadiusX(double radiusX)

  The radius along the x axis, in user space.

  Specified by:
    `setRadiusX` in interface `MorphologyRable`
  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 interface `MorphologyRable`
  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 interface `MorphologyRable`
  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 interface `MorphologyRable`

### getRadiusX

    public double getRadiusX()

  Returns the radius along the x-axis, in user space.

  Specified by:
    `getRadiusX` in interface `MorphologyRable`

### getRadiusY

    public double getRadiusY()

  Returns the radius along the y-axis, in user space.

  Specified by:
    `getRadiusY` in interface `MorphologyRable`

### createRendering

    public java.awt.image.RenderedImage createRendering(java.awt.image.renderable.RenderContext rc)

  Specified by:
    `createRendering` in interface `java.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 interface `Filter`
  Overrides:
    `getDependencyRegion` in class `AbstractRable`
  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 interface `Filter`
  Overrides:
    `getDirtyRegion` in class `AbstractRable`
  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.

Copyright © 2004 Apache Software Foundation. All Rights Reserved.