public abstract class WarpOpImage
extends javax.media.jai.WarpOpImage
WarpOpImage
that makes use of the provided ROI and NoData.Modifier and Type | Field and Description |
---|---|
protected static boolean |
ARRAY_CALC
Constant indicating that the inner random iterators must pre-calculate an array of the image positions
|
protected int |
bottomPad
Bottom padding
|
protected boolean |
caseA
Boolean indicating absence of both NoData and ROI
|
protected boolean |
caseB
Boolean indicating absence of NoData and presence of ROI
|
protected boolean |
caseC
Boolean indicating absence of ROI and presence of NoData
|
protected boolean |
extended
Boolean indicating the presence of a border extender
|
protected boolean |
hasNoData
Boolean indicating if NoData values are present
|
protected boolean |
hasROI
Boolean indicating if ROI is used
|
protected int |
leftPad
Left padding
|
protected Range |
noDataRange
Current NoData Range object
|
protected int |
rightPad
Right padding
|
protected javax.media.jai.ROI |
roi
Current ROI object
|
protected Rectangle |
roiBounds
Rectangle associated to the ROI bounds
|
protected javax.media.jai.PlanarImage |
roiImage
Image associated to the ROI
|
protected static boolean |
TILE_CACHED
Constant indicating that the inner random iterators must cache the current tile position
|
protected static int |
TILE_EXTENDER
Quantity used for extending the input tile dimensions
|
protected int |
topPad
Top padding
|
protected static javax.media.jai.BorderExtender |
ZERO_EXTENDER
BorderExtender instance for extending roi. |
backgroundValues, computableBounds, extender, intBackgroundValues, interp, setBackground
Constructor and Description |
---|
WarpOpImage(RenderedImage source,
javax.media.jai.ImageLayout layout,
Map<?,?> configuration,
boolean cobbleSources,
javax.media.jai.BorderExtender extender,
javax.media.jai.Interpolation interp,
javax.media.jai.Warp warp,
double[] backgroundValues,
javax.media.jai.ROI roi,
Range noData) |
Modifier and Type | Method and Description |
---|---|
protected void |
computeRect(javax.media.jai.PlanarImage[] sources,
WritableRaster dest,
Rectangle destRect)
Warps a rectangle.
|
protected abstract void |
computeRectByte(javax.media.jai.PlanarImage src,
javax.media.jai.RasterAccessor dst,
javax.media.jai.iterator.RandomIter roiIter,
boolean roiContainsTile)
Computation of the Warp operation on Byte images
|
protected abstract void |
computeRectDouble(javax.media.jai.PlanarImage src,
javax.media.jai.RasterAccessor dst,
javax.media.jai.iterator.RandomIter roiIter,
boolean roiContainsTile)
Computation of the Warp operation on Double images
|
protected abstract void |
computeRectFloat(javax.media.jai.PlanarImage src,
javax.media.jai.RasterAccessor dst,
javax.media.jai.iterator.RandomIter roiIter,
boolean roiContainsTile)
Computation of the Warp operation on Float images
|
protected abstract void |
computeRectInt(javax.media.jai.PlanarImage src,
javax.media.jai.RasterAccessor dst,
javax.media.jai.iterator.RandomIter roiIter,
boolean roiContainsTile)
Computation of the Warp operation on Integer images
|
protected abstract void |
computeRectShort(javax.media.jai.PlanarImage src,
javax.media.jai.RasterAccessor dst,
javax.media.jai.iterator.RandomIter roiIter,
boolean roiContainsTile)
Computation of the Warp operation on Short images
|
protected abstract void |
computeRectUShort(javax.media.jai.PlanarImage src,
javax.media.jai.RasterAccessor dst,
javax.media.jai.iterator.RandomIter roiIter,
boolean roiContainsTile)
Computation of the Warp operation on UShort images
|
Raster |
computeTile(int tileX,
int tileY)
Computes a tile.
|
static int |
floor(float f)
Returns the "floor" value of a float.
|
protected javax.media.jai.iterator.RandomIter |
getRandomIterator(javax.media.jai.PlanarImage src,
javax.media.jai.BorderExtender extender)
Returns a RandomIterator on the input image.
|
protected javax.media.jai.iterator.RandomIter |
getRandomIterator(javax.media.jai.PlanarImage src,
int leftPad,
int rightPad,
int topPad,
int bottomPad,
javax.media.jai.BorderExtender extender)
Returns a RandomIterator on the input image.
|
static double[] |
prepareBackground(RenderedImage source,
javax.media.jai.ImageLayout layout,
javax.media.jai.Interpolation interp,
double[] backgroundValues)
Utility method used for creating an array of background values from a single value, taken from the interpolator.
|
static int |
round(float f)
Returns the "round" value of a float.
|
backwardMapRect, forwardMapRect, getBottomPadding, getLeftPadding, getRightPadding, getTopPadding, mapDestPoint, mapSourcePoint
getBorderExtender, getInterpolation, mapDestRect, mapSourceRect
addTileToCache, cancelTiles, computeRect, computesUniqueTiles, createTile, dispose, getExpandedNumBands, getFormatTags, getOperationComputeType, getTile, getTileCache, getTileCacheMetric, getTileDependencies, getTileFromCache, getTileRecycler, getTiles, hasExtender, prefetchTiles, queueTiles, recycleTile, setTileCache, vectorize, vectorize, vectorize
addPropertyChangeListener, addPropertyChangeListener, addSink, addSink, addSource, addTileComputationListener, copyData, copyData, copyExtendedData, createColorModel, createSnapshot, createWritableRaster, finalize, getAsBufferedImage, getAsBufferedImage, getBounds, getColorModel, getData, getData, getDefaultColorModel, getExtendedData, getGraphics, getHeight, getImageID, getMaxTileX, getMaxTileY, getMaxX, getMaxY, getMinTileX, getMinTileY, getMinX, getMinY, getNumBands, getNumSources, getNumXTiles, getNumYTiles, getProperties, getProperty, getPropertyClass, getPropertyNames, getPropertyNames, getSampleModel, getSinks, getSource, getSourceImage, getSourceObject, getSources, getSplits, getTileComputationListeners, getTileFactory, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileIndices, getTileRect, getTiles, getTileWidth, getWidth, overlapsMultipleTiles, removeProperty, removePropertyChangeListener, removePropertyChangeListener, removeSink, removeSink, removeSinks, removeSource, removeSources, removeTileComputationListener, setImageLayout, setProperties, setProperty, setSource, setSources, tileXToX, tileXToX, tileYToY, tileYToY, toString, wrapRenderedImage, XToTileX, XToTileX, YToTileY, YToTileY
protected static final javax.media.jai.BorderExtender ZERO_EXTENDER
BorderExtender
instance for extending roi.protected static final int TILE_EXTENDER
protected static final boolean ARRAY_CALC
protected static final boolean TILE_CACHED
protected final javax.media.jai.ROI roi
protected final boolean hasROI
protected final boolean hasNoData
protected final boolean caseA
protected final boolean caseB
protected final boolean caseC
protected Range noDataRange
protected boolean extended
protected int leftPad
protected int rightPad
protected int topPad
protected int bottomPad
protected volatile javax.media.jai.PlanarImage roiImage
protected Rectangle roiBounds
public WarpOpImage(RenderedImage source, javax.media.jai.ImageLayout layout, Map<?,?> configuration, boolean cobbleSources, javax.media.jai.BorderExtender extender, javax.media.jai.Interpolation interp, javax.media.jai.Warp warp, double[] backgroundValues, javax.media.jai.ROI roi, Range noData)
public Raster computeTile(int tileX, int tileY)
WritableRaster
is created to represent the requested tile. Its width and height equals to this image's tile
width and tile height respectively. This method assumes that the requested tile either intersects or is within the bounds of this image.
Whether or not this method performs source cobbling is determined by the cobbleSources
variable set at construction time. If
cobbleSources
is true
, cobbling is performed on the source for areas that intersect multiple tiles, and
computeRect(Raster[], WritableRaster, Rectangle)
is called to perform the actual computation. Otherwise,
computeRect(PlanarImage[], WritableRaster, Rectangle)
is called to perform the actual computation.
If ROI is present, then the source mapped rectangle is checked if it intersects the input ROI; if this condition is not satisfied, then the
tile is not elaborated.
computeTile
in class javax.media.jai.WarpOpImage
tileX
- The X index of the tile.tileY
- The Y index of the tile.Raster
.protected void computeRect(javax.media.jai.PlanarImage[] sources, WritableRaster dest, Rectangle destRect)
computeRect
in class javax.media.jai.OpImage
protected abstract void computeRectByte(javax.media.jai.PlanarImage src, javax.media.jai.RasterAccessor dst, javax.media.jai.iterator.RandomIter roiIter, boolean roiContainsTile)
src
- dst
- roiIter
- roiContainsTile
- protected abstract void computeRectUShort(javax.media.jai.PlanarImage src, javax.media.jai.RasterAccessor dst, javax.media.jai.iterator.RandomIter roiIter, boolean roiContainsTile)
src
- dst
- roiIter
- roiContainsTile
- protected abstract void computeRectShort(javax.media.jai.PlanarImage src, javax.media.jai.RasterAccessor dst, javax.media.jai.iterator.RandomIter roiIter, boolean roiContainsTile)
src
- dst
- roiIter
- roiContainsTile
- protected abstract void computeRectInt(javax.media.jai.PlanarImage src, javax.media.jai.RasterAccessor dst, javax.media.jai.iterator.RandomIter roiIter, boolean roiContainsTile)
src
- dst
- roiIter
- roiContainsTile
- protected abstract void computeRectFloat(javax.media.jai.PlanarImage src, javax.media.jai.RasterAccessor dst, javax.media.jai.iterator.RandomIter roiIter, boolean roiContainsTile)
src
- dst
- roiIter
- roiContainsTile
- protected abstract void computeRectDouble(javax.media.jai.PlanarImage src, javax.media.jai.RasterAccessor dst, javax.media.jai.iterator.RandomIter roiIter, boolean roiContainsTile)
src
- dst
- roiIter
- roiContainsTile
- public static double[] prepareBackground(RenderedImage source, javax.media.jai.ImageLayout layout, javax.media.jai.Interpolation interp, double[] backgroundValues)
source
- layout
- interp
- backgroundValues
- public static final int floor(float f)
public static final int round(float f)
protected javax.media.jai.iterator.RandomIter getRandomIterator(javax.media.jai.PlanarImage src, javax.media.jai.BorderExtender extender)
src
- protected javax.media.jai.iterator.RandomIter getRandomIterator(javax.media.jai.PlanarImage src, int leftPad, int rightPad, int topPad, int bottomPad, javax.media.jai.BorderExtender extender)
src
- Copyright © 2006–2016 GeoSolutions. All rights reserved.