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

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

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

public class DisplacementMapRable8Bit
extends AbstractColorInterpolationRable
implements DisplacementMapRable

Implements a DisplacementMap operation, which takes pixel values from another image to spatially displace the input image

Field Summary

Fields inherited from class org.apache.batik.ext.awt.image.renderable.AbstractColorInterpolationRable
`csLinear`

Fields inherited from class org.apache.batik.ext.awt.image.renderable.AbstractRable
`props, srcs, stamp`

Fields inherited from interface org.apache.batik.ext.awt.image.renderable.DisplacementMapRable
`CHANNEL_A, CHANNEL_B, CHANNEL_G, CHANNEL_R`

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

Constructor Summary
`DisplacementMapRable8Bit(java.util.List sources, double scale, ARGBChannel xChannelSelector, ARGBChannel yChannelSelector)`

Method Summary
`java.awt.image.RenderedImage` `createRendering(java.awt.image.renderable.RenderContext rc)`
`java.awt.geom.Rectangle2D` `getBounds2D()` Returns the bounds of the current image.
`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.
`double` `getScale()` Returns the displacement scale factor
`ARGBChannel` `getXChannelSelector()` Returns the xChannelSelector
`ARGBChannel` `getYChannelSelector()` Returns the yChannelSelector
`void` `setScale(double scale)` The displacement scale factor
`void` `setSources(java.util.List sources)` Sets this filter sources.
`void` `setXChannelSelector(ARGBChannel xChannelSelector)` Select which component values will be used for displacement along the X axis
`void` `setYChannelSelector(ARGBChannel yChannelSelector)` Select which component values will be used for displacement along the Y axis

Methods inherited from class org.apache.batik.ext.awt.image.renderable.AbstractColorInterpolationRable
`convertSourceCS, convertSourceCS, getOperationColorSpace, isColorSpaceLinear, setColorSpaceLinear`

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.FilterColorInterpolation
`getOperationColorSpace, isColorSpaceLinear, setColorSpaceLinear`

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

### DisplacementMapRable8Bit

    public DisplacementMapRable8Bit(java.util.List sources,
                                    double scale,
                                    ARGBChannel xChannelSelector,
                                    ARGBChannel yChannelSelector)

Method Detail

### getBounds2D

    public java.awt.geom.Rectangle2D getBounds2D()

  Description copied from interface: `Filter`
  Returns the bounds of the current image. This should be 'in sync' with getMinX, getMinY, getWidth, getHeight

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

### setScale

    public void setScale(double scale)

  The displacement scale factor

  Specified by:
    `setScale` in interface `DisplacementMapRable`
  Parameters:
    `scale` - can be any number.

### getScale

    public double getScale()

  Returns the displacement scale factor

  Specified by:
    `getScale` in interface `DisplacementMapRable`

### setSources

    public void setSources(java.util.List sources)

  Sets this filter sources.

  Specified by:
    `setSources` in interface `DisplacementMapRable`
  Parameters:
    `sources` - The list of images used in the operation.

### setXChannelSelector

    public void setXChannelSelector(ARGBChannel xChannelSelector)

  Select which component values will be used for displacement along the X axis

  Specified by:
    `setXChannelSelector` in interface `DisplacementMapRable`
  Parameters:
    `xChannelSelector` - value is among R, G, B and A.

### getXChannelSelector

    public ARGBChannel getXChannelSelector()

  Returns the xChannelSelector

  Specified by:
    `getXChannelSelector` in interface `DisplacementMapRable`

### setYChannelSelector

    public void setYChannelSelector(ARGBChannel yChannelSelector)

  Select which component values will be used for displacement along the Y axis

  Specified by:
    `setYChannelSelector` in interface `DisplacementMapRable`
  Parameters:
    `yChannelSelector` - value is among R, G, B and A.

### getYChannelSelector

    public ARGBChannel getYChannelSelector()

  Returns the yChannelSelector

  Specified by:
    `getYChannelSelector` in interface `DisplacementMapRable`

### 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.