Class Interpolate
- Object
-
- AbstractOperation
-
- Operation2D
-
- Interpolate
-
- All Implemented Interfaces:
Serializable
,Operation
public class Interpolate extends Operation2D
Specifies the interpolation type to be used to interpolate values for points which fall between grid cells. The default value is nearest neighbor. The new interpolation type operates on all sample dimensions. Possible values for type are:"NearestNeighbor"
,"Bilinear"
and"Bicubic"
(the"Optimal"
interpolation type is currently not supported).Geotools extension:
The Geotools implementation provides two extensions to OpenGIS specification: First, it accepts also anInterpolation
argument type, for interoperability with Java Advanced Imaging. Second, it accepts also an array ofString
orInterpolation
objects. When an array is specified, the first interpolation in the array is applied. If this interpolation returns aNaN
value, then the second interpolation is tried as a fallback. If the second interpolation returns also aNaN
value, then the third one is tried and so on until an interpolation returns a real number or until we reach the end of interpolation list. This behavior is convenient when processing remote sensing images of geophysics data, for example Sea Surface Temperature (SST), in which clouds may mask many pixels (i.e. set them to someNaN
values). Because"Bicubic"
interpolation needs 4×4 pixels while"Bilinear"
interpolation needs only 2x2 pixels, the"Bilinear"
interpolation is less likely to fails because of clouds (NaN
values) than the"Bicubic"
one (note: only oneNaN
value is enough to make an interpolation fails). One can workaround the problem by trying a bicubic interpolation first, then a linear interpolation if"Bicubic"
failed at a particular location, etc. This behavior can be specified with the following"Type"
argument:new String[]{"Bicubic", "Bilinear", "NearestNeighbor"}
.Name:
"Interpolate"
JAI operator: N/A
Parameters:Name Class Default value Minimum value Maximum value "Source"
GridCoverage2D
N/A N/A N/A "Type"
CharSequence
"NearestNeighbor" N/A N/A - Since:
- 2.2
- Author:
- Martin Desruisseaux (IRD)
- See Also:
Operations.interpolate(org.geotools.api.coverage.grid.GridCoverage, java.lang.String)
,Interpolator2D
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static ParameterDescriptor<Object>
TYPE
The parameter descriptor for the interpolation type.-
Fields inherited from class Operation2D
PRIMARY_SOURCE_INDEX, SOURCE_0
-
Fields inherited from class AbstractOperation
descriptor
-
-
Constructor Summary
Constructors Constructor Description Interpolate()
Constructs an"Interpolate"
operation.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Coverage
doOperation(ParameterValueGroup parameters, Hints hints)
Applies an interpolation to a grid coverage.-
Methods inherited from class Operation2D
extractSources, getFactory
-
Methods inherited from class AbstractOperation
equals, getDescription, getDocURL, getName, getNumSources, getParameters, getVendor, getVersion, hashCode, toString
-
-
-
-
Field Detail
-
TYPE
public static final ParameterDescriptor<Object> TYPE
The parameter descriptor for the interpolation type.
-
-
Method Detail
-
doOperation
public Coverage doOperation(ParameterValueGroup parameters, Hints hints)
Applies an interpolation to a grid coverage. This method is invoked byorg.geotools.coverage.processing.DefaultProcessor
for the"Interpolate"
operation.- Specified by:
doOperation
in classAbstractOperation
- Parameters:
parameters
- List of name value pairs for the parameters required for the operation.hints
- A set of rendering hints, ornull
if none. TheDefaultProcessor
may provides hints for the following keys:Hints.COORDINATE_OPERATION_FACTORY
andHints.JAI_INSTANCE
.- Returns:
- The result as a coverage.
-
-