Package org.geotools.coverage.grid
Class Interpolator2D
- Object
-
- PropertySourceImpl
-
- AbstractCoverage
-
- AbstractGridCoverage
-
- GridCoverage2D
-
- Interpolator2D
-
- All Implemented Interfaces:
Serializable,PropertySource,Coverage,GridCoverage
public final class Interpolator2D extends GridCoverage2D
A grid coverage using an interpolation for evaluating points. This interpolator is not used for nearest-neighbor interpolation (use the plainGridCoverage2Dclass for that). It should work for other kinds of interpolation however.- Since:
- 2.2
- Author:
- Martin Desruisseaux (IRD)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class GridCoverage2D
GridCoverage2D.Renderable
-
-
Field Summary
Fields Modifier and Type Field Description static intDEFAULT_BORDER_EXTENDER_TYPEDefaultBorderExtenderisBorderExtenderCopy.protected GridCoverage2DsourceThe source grid coverage which was specified at construction time (nevernull).-
Fields inherited from class GridCoverage2D
gridGeometry, image
-
Fields inherited from class AbstractGridCoverage
LOGGER
-
Fields inherited from class AbstractCoverage
crs
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static GridCoverage2Dcreate(GridCoverage2D coverage)Constructs a new interpolator using default interpolations.static GridCoverage2Dcreate(GridCoverage2D coverage, Interpolation interpolation)Constructs a new interpolator for a single interpolation.static GridCoverage2Dcreate(GridCoverage2D coverage, Interpolation[] interpolations)Constructs a new interpolator for an interpolation and its fallbacks.static GridCoverage2Dcreate(GridCoverage2D coverage, Interpolation[] interpolations, BorderExtender be)Constructs a new interpolator for an interpolation and its fallbacks.double[]evaluate(Point2D coord, double[] dest)Returns a sequence of double values for a given two-dimensional point in the coverage.float[]evaluate(Point2D coord, float[] dest)Returns a sequence of float values for a given two-dimensional point in the coverage.int[]evaluate(Point2D coord, int[] dest)Returns a sequence of integer values for a given two-dimensional point in the coverage.InterpolationgetInterpolation()Returns the primary interpolation used by thisInterpolator2D.Interpolation[]getInterpolations()Returns interpolations.-
Methods inherited from class GridCoverage2D
dispose, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, getCoordinateReferenceSystem2D, getDebugString, getEnvelope, getEnvelope2D, getGridGeometry, getNumSampleDimensions, getOptimalDataBlockSizes, getRenderableImage, getRenderedImage, getSampleDimension, getSampleDimensions, isDataEditable, prefetch, show, show, toString
-
Methods inherited from class AbstractGridCoverage
formatEvaluateError, formatEvaluateError, getNumOverviews, getOverview, getOverviewGridGeometry, getSources
-
Methods inherited from class AbstractCoverage
evaluate, evaluate, getCoordinateReferenceSystem, getDimension, getLocale, getName, getRangeType, show
-
Methods inherited from class PropertySourceImpl
getProperties, getProperty, getPropertyClass, getPropertyNames, getPropertyNames
-
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface Coverage
evaluate, evaluate, getCoordinateReferenceSystem, getRangeType
-
-
-
-
Field Detail
-
source
protected final GridCoverage2D source
The source grid coverage which was specified at construction time (nevernull).
-
DEFAULT_BORDER_EXTENDER_TYPE
public static int DEFAULT_BORDER_EXTENDER_TYPE
DefaultBorderExtenderisBorderExtenderCopy.
-
-
Method Detail
-
create
public static GridCoverage2D create(GridCoverage2D coverage)
Constructs a new interpolator using default interpolations.- Parameters:
coverage- The coverage to interpolate.
-
create
public static GridCoverage2D create(GridCoverage2D coverage, Interpolation interpolation)
Constructs a new interpolator for a single interpolation.- Parameters:
coverage- The coverage to interpolate.interpolation- The interpolation to use.
-
create
public static GridCoverage2D create(GridCoverage2D coverage, Interpolation[] interpolations)
Constructs a new interpolator for an interpolation and its fallbacks. The fallbacks are used if the primary interpolation failed because of NaN values in the interpolated point neighbor.- Parameters:
coverage- The coverage to interpolate.interpolations- The interpolation to use and its fallback (if any).
-
create
public static GridCoverage2D create(GridCoverage2D coverage, Interpolation[] interpolations, BorderExtender be)
Constructs a new interpolator for an interpolation and its fallbacks. The fallbacks are used if the primary interpolation failed because of NaN values in the interpolated point neighbor.- Parameters:
coverage- The coverage to interpolate.interpolations- The interpolation to use and its fallback (if any).
-
getInterpolations
public Interpolation[] getInterpolations()
Returns interpolations. The first array's element is the interpolation for this grid coverage. Other elements (if any) are fallbacks.
-
getInterpolation
public Interpolation getInterpolation()
Returns the primary interpolation used by thisInterpolator2D.- Overrides:
getInterpolationin classGridCoverage2D- Returns:
- The interpolation.
-
evaluate
public int[] evaluate(Point2D coord, int[] dest) throws CannotEvaluateException
Returns a sequence of integer values for a given two-dimensional point in the coverage.- Overrides:
evaluatein classGridCoverage2D- Parameters:
coord- The coordinate point where to evaluate.dest- An array in which to store values, ornull.- Returns:
- An array containing values.
- Throws:
CannotEvaluateException- if the values can't be computed at the specified coordinate. More specifically,PointOutsideCoverageExceptionis thrown if the evaluation failed because the input point has invalid coordinates.
-
evaluate
public float[] evaluate(Point2D coord, float[] dest) throws CannotEvaluateException
Returns a sequence of float values for a given two-dimensional point in the coverage.- Overrides:
evaluatein classGridCoverage2D- Parameters:
coord- The coordinate point where to evaluate.dest- An array in which to store values, ornull.- Returns:
- An array containing values.
- Throws:
CannotEvaluateException- if the values can't be computed at the specified coordinate. More specifically,PointOutsideCoverageExceptionis thrown if the evaluation failed because the input point has invalid coordinates.
-
evaluate
public double[] evaluate(Point2D coord, double[] dest) throws CannotEvaluateException
Returns a sequence of double values for a given two-dimensional point in the coverage.- Overrides:
evaluatein classGridCoverage2D- Parameters:
coord- The coordinate point where to evaluate.dest- An array in which to store values, ornull.- Returns:
- An array containing values.
- Throws:
CannotEvaluateException- if the values can't be computed at the specified coordinate. More specifically,PointOutsideCoverageExceptionis thrown if the evaluation failed because the input point has invalid coordinates.
-
-