BufferedImageOp
, RasterOp
This class implements a convolution from the source to the destination. Convolution using a convolution kernel is a spatial operation that computes the output pixel from an input pixel by multiplying the kernel with the surround of the input pixel. This allows the output pixel to be affected by the immediate neighborhood in a way that can be mathematically specified with a kernel.
This class operates with BufferedImage data in which color components are premultiplied with the alpha component. If the Source BufferedImage has an alpha component, and the color components are not premultiplied with the alpha component, then the data are premultiplied before being convolved. If the Destination has color components which are not premultiplied, then alpha is divided out before storing into the Destination (if alpha is 0, the color components are set to 0). If the Destination has no alpha component, then the resulting alpha is discarded after first dividing it out of the color components.
Rasters are treated as having no alpha channel. If the above treatment of the alpha channel in BufferedImages is not desired, it may be avoided by getting the Raster of a source BufferedImage and using the filter method of this class which works with Rasters.
If a RenderingHints object is specified in the constructor, the color rendering hint and the dithering hint may be used when color conversion is required.
Note that the Source and the Destination may not be the same object.
Fields
static final int
Pixels at the edge of the source image are copied to the corresponding pixels in the destination without modification.
static final int
Pixels at the edge of the destination image are set to zero.
Constructors
Constructs a ConvolveOp given a Kernel.
Constructs a ConvolveOp given a Kernel, an edge condition, and a RenderingHints object (which may be null).
Creates a zeroed destination image with the correct size and number of bands.
Creates a zeroed destination Raster with the correct size and number of bands, given this source.
Performs a convolution on BufferedImages.
Performs a convolution on Rasters.
Returns the bounding box of the filtered destination image.
Returns the bounding box of the filtered destination Raster.
int
Returns the edge condition.
Returns the location of the destination point given a point in the source.
Returns the rendering hints for this op.
Methods declared in class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Pixels at the edge of the destination image are set to zero. This is the default.
Pixels at the edge of the source image are copied to the corresponding pixels in the destination without modification.
Constructs a ConvolveOp given a Kernel, an edge condition, and a RenderingHints object (which may be null).
kernel
- the specified Kernel
edgeCondition
- the specified edge condition
hints
- the specified RenderingHints
object
Constructs a ConvolveOp given a Kernel. The edge condition will be EDGE_ZERO_FILL.
kernel
- the specified Kernel
public int getEdgeCondition()
Returns the edge condition.
ConvolveOp
.
()
Returns the Kernel.
Kernel
of this ConvolveOp
.
Performs a convolution on BufferedImages. Each component of the source image will be convolved (including the alpha component, if present). If the color model in the source image is not the same as that in the destination image, the pixels will be converted in the destination. If the destination image is null, a BufferedImage will be created with the source ColorModel. The IllegalArgumentException may be thrown if the source is the same as the destination.
filter
in interface BufferedImageOp
src
- the source BufferedImage
to filter
dst
- the destination BufferedImage
for the filtered src
BufferedImage
NullPointerException
- if src
is null
IllegalArgumentException
- if src
equals dst
ImagingOpException
- if src
cannot be filtered
Performs a convolution on Rasters. Each band of the source Raster will be convolved. The source and destination must have the same number of bands. If the destination Raster is null, a new Raster will be created. The IllegalArgumentException may be thrown if the source is the same as the destination.
filter
in interface RasterOp
src
- the source Raster
to filter
dst
- the destination WritableRaster
for the filtered src
WritableRaster
NullPointerException
- if src
is null
ImagingOpException
- if src
and dst
do not have the same number of bands
ImagingOpException
- if src
cannot be filtered
IllegalArgumentException
- if src
equals dst
Creates a zeroed destination image with the correct size and number of bands. If destCM is null, an appropriate ColorModel will be used.
createCompatibleDestImage
in interface BufferedImageOp
src
- Source image for the filter operation.
destCM
- ColorModel of the destination. Can be null.
BufferedImage
with the correct size and number of bands.
Creates a zeroed destination Raster with the correct size and number of bands, given this source.
createCompatibleDestRaster
in interface RasterOp
src
- the source Raster
WritableRaster
that is compatible with src
Returns the bounding box of the filtered destination image. Since this is not a geometric operation, the bounding box does not change.
getBounds2D
in interface BufferedImageOp
src
- The BufferedImage
to be filtered
Rectangle2D
representing the destination image's bounding box.
Returns the bounding box of the filtered destination Raster. Since this is not a geometric operation, the bounding box does not change.
getBounds2D
in interface RasterOp
src
- the source Raster
Rectangle2D
that is the bounding box of the Raster
resulting from the filtering operation.
Returns the location of the destination point given a point in the source. If dstPt is non-null, it will be used to hold the return value. Since this is not a geometric operation, the srcPt will equal the dstPt.
getPoint2D
in interface BufferedImageOp
getPoint2D
in interface RasterOp
srcPt
- the Point2D
that represents the point in the source image
dstPt
- The Point2D
in which to store the result
Point2D
in the destination image that corresponds to the specified point in the source image.
Returns the rendering hints for this op.
getRenderingHints
in interface BufferedImageOp
getRenderingHints
in interface RasterOp
RenderingHints
object for this BufferedImageOp
. Returns null if no hints have been set.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4