RasterOp (Java SE 13 & JDK 13 )
Description: declaration: module: java.desktop, package: java.awt.image, interface: RasterOp
Keywords: java.awt.image.RasterOp interface

Module java.desktop
Package java.awt.image

# Interface RasterOp

All Known Implementing Classes:
  `AffineTransformOp`, `BandCombineOp`, `ColorConvertOp`, `ConvolveOp`, `LookupOp`, `RescaleOp`

    public interface RasterOp

This interface describes single-input/single-output operations performed on Raster objects. It is implemented by such classes as AffineTransformOp, ConvolveOp, and LookupOp. The Source and Destination objects must contain the appropriate number of bands for the particular classes implementing this interface. Otherwise, an exception is thrown. This interface cannot be used to describe more sophisticated Ops such as ones that take multiple sources. Each class implementing this interface will specify whether or not it will allow an in-place filtering operation (i.e. source object equal to the destination object). Note that the restriction to single-input operations means that the values of destination pixels prior to the operation are not used as input to the filter operation.

See Also:
  `AffineTransformOp`, `BandCombineOp`, `ColorConvertOp`, `ConvolveOp`, `LookupOp`, `RescaleOp`

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `WritableRaster` | `createCompatibleDestRaster​(Raster src)` | Creates a zeroed destination Raster with the correct size and number of bands.
  `WritableRaster` | `filter​(Raster src, WritableRaster dest)` | Performs a single-input/single-output operation from a source Raster to a destination Raster.
  `Rectangle2D` | `getBounds2D​(Raster src)` | Returns the bounding box of the filtered destination Raster.
  `Point2D` | `getPoint2D​(Point2D srcPt, Point2D dstPt)` | Returns the location of the destination point given a point in the source Raster.
  `RenderingHints` | `getRenderingHints()` | Returns the rendering hints for this RasterOp.

- ## Method Details

  - ### filter

    WritableRaster filter​(Raster src, WritableRaster dest)
    Performs a single-input/single-output operation from a source Raster to a destination Raster. If the destination Raster is null, a new Raster will be created. The IllegalArgumentException may be thrown if the source and/or destination Raster is incompatible with the types of Rasters allowed by the class implementing this filter.
    Parameters:
      `src` - the source `Raster`
      `dest` - the destination `WritableRaster`
    Returns:
      a `WritableRaster` that represents the result of the filtering operation.

  - ### getBounds2D

    Rectangle2D getBounds2D​(Raster src)
    Returns the bounding box of the filtered destination Raster. The IllegalArgumentException may be thrown if the source Raster is incompatible with the types of Rasters allowed by the class implementing this filter.
    Parameters:
      `src` - the source `Raster`
    Returns:
      a `Rectangle2D` that is the bounding box of the `Raster` resulting from the filtering operation.

  - ### createCompatibleDestRaster

    WritableRaster createCompatibleDestRaster​(Raster src)
    Creates a zeroed destination Raster with the correct size and number of bands. The IllegalArgumentException may be thrown if the source Raster is incompatible with the types of Rasters allowed by the class implementing this filter.
    Parameters:
      `src` - the source `Raster`
    Returns:
      a `WritableRaster` that is compatible with `src`

  - ### getPoint2D

    Point2D getPoint2D​(Point2D srcPt, Point2D dstPt)
    Returns the location of the destination point given a point in the source Raster. If dstPt is non-null, it will be used to hold the return value.
    Parameters:
      `srcPt` - the source `Point2D`
      `dstPt` - the destination `Point2D`
    Returns:
      the location of the destination point.

  - ### getRenderingHints

    RenderingHints getRenderingHints()
    Returns the rendering hints for this RasterOp. Returns null if no hints have been set.
    Returns:
      the `RenderingHints` object of this `RasterOp`.