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:
java.awt.image.renderable.RenderableImage,DisplacementMapRable,Filter,FilterColorInterpolation
public class DisplacementMapRable8Bit extends AbstractColorInterpolationRable implements DisplacementMapRable
Implements a DisplacementMap operation, which takes pixel values from another image to spatially displace the input image- Version:
- $Id: DisplacementMapRable8Bit.java 1733416 2016-03-03 07:07:13Z gadams $
-
-
Field Summary
Fields Modifier and Type Field Description private doublescaleDisplacement scale factorprivate ARGBChannelxChannelSelectorDefines which channel in the second source is used to displace along the x axisprivate ARGBChannelyChannelSelectorDefines which channel in the second source is used to displace along the y axis.-
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
-
-
Constructor Summary
Constructors Constructor Description DisplacementMapRable8Bit(java.util.List sources, double scale, ARGBChannel xChannelSelector, ARGBChannel yChannelSelector)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.image.RenderedImagecreateRendering(java.awt.image.renderable.RenderContext rc)java.awt.geom.Rectangle2DgetBounds2D()Returns the bounds of the current image.java.awt.ShapegetDependencyRegion(int srcIndex, java.awt.geom.Rectangle2D outputRgn)Returns the region of input data is is required to generate outputRgn.java.awt.ShapegetDirtyRegion(int srcIndex, java.awt.geom.Rectangle2D inputRgn)This calculates the region of output that is affected by a change in a region of input.doublegetScale()Returns the displacement scale factorARGBChannelgetXChannelSelector()Returns the xChannelSelectorARGBChannelgetYChannelSelector()Returns the yChannelSelectorvoidsetScale(double scale)The displacement scale factorvoidsetSources(java.util.List sources)Sets this filter sources.voidsetXChannelSelector(ARGBChannel xChannelSelector)Select which component values will be used for displacement along the X axisvoidsetYChannelSelector(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.Filter
getTimeStamp
-
Methods inherited from interface org.apache.batik.ext.awt.image.renderable.FilterColorInterpolation
getOperationColorSpace, isColorSpaceLinear, setColorSpaceLinear
-
-
-
-
Field Detail
-
scale
private double scale
Displacement scale factor
-
xChannelSelector
private ARGBChannel xChannelSelector
Defines which channel in the second source is used to displace along the x axis
-
yChannelSelector
private ARGBChannel yChannelSelector
Defines which channel in the second source is used to displace along the y axis.
-
-
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:FilterReturns the bounds of the current image. This should be 'in sync' with getMinX, getMinY, getWidth, getHeight- Specified by:
getBounds2Din interfaceFilter- Overrides:
getBounds2Din classAbstractRable
-
setScale
public void setScale(double scale)
The displacement scale factor- Specified by:
setScalein interfaceDisplacementMapRable- Parameters:
scale- can be any number.
-
getScale
public double getScale()
Returns the displacement scale factor- Specified by:
getScalein interfaceDisplacementMapRable
-
setSources
public void setSources(java.util.List sources)
Sets this filter sources.- Specified by:
setSourcesin interfaceDisplacementMapRable- 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:
setXChannelSelectorin interfaceDisplacementMapRable- Parameters:
xChannelSelector- value is among R, G, B and A.
-
getXChannelSelector
public ARGBChannel getXChannelSelector()
Returns the xChannelSelector- Specified by:
getXChannelSelectorin interfaceDisplacementMapRable
-
setYChannelSelector
public void setYChannelSelector(ARGBChannel yChannelSelector)
Select which component values will be used for displacement along the Y axis- Specified by:
setYChannelSelectorin interfaceDisplacementMapRable- Parameters:
yChannelSelector- value is among R, G, B and A.
-
getYChannelSelector
public ARGBChannel getYChannelSelector()
Returns the yChannelSelector- Specified by:
getYChannelSelectorin interfaceDisplacementMapRable
-
createRendering
public java.awt.image.RenderedImage createRendering(java.awt.image.renderable.RenderContext rc)
- Specified by:
createRenderingin 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:
getDependencyRegionin interfaceFilter- Overrides:
getDependencyRegionin 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:
getDirtyRegionin interfaceFilter- Overrides:
getDirtyRegionin 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.
-
-