The geometric relationship between the source and destination images will be determined by the specific behavior of the methods backwardMapRect()
and forwardMapRect()
the implementations of which must be provided by a subclass.
The location of the source pixel corresponding to a given destination pixel is determined by the aforementioned backward mapping transformation. The value of the destination pixel is then calculated by interpolating the values of a set of source pixels at locations in the vicinity of the backward mapped destination pixel location according to the requirements of a specified interpolation algorithm. In particular, a given destination pixel value may be interpolated from the neighborhood of source pixels beginning at (sx - leftPadding, sy - topPadding) and extending to (sx + rightPadding, sy + bottomPadding), inclusive, where (sx, sy) is the truncated backward mapped location of the destination pixel. The actual amount of padding required is determined by a supplied Interpolation
object.
Since this operator might need a region around each source pixel in order to compute the destination pixel value, the border destination pixels might not be able to be computed without any source extension mechanism. The source extension method can be specified by supplying a BorderExtender
object that will define the pixel values of the source outside the actual source area as a function of the actual source pixel values. If no extension is specified, the destination samples that cannot be computed will be written in the destination as the user-specified background values.
@see BorderExtender
@see Interpolation
@see InterpolationNearest
@see OpImage
@since JAI 1.1
|
|