org.geotools.coverage.grid
Class Interpolator2D

java.lang.Object
  extended byjavax.media.jai.PropertySourceImpl
      extended byorg.geotools.coverage.AbstractCoverage
          extended byorg.geotools.coverage.grid.AbstractGridCoverage
              extended byorg.geotools.coverage.grid.GridCoverage2D
                  extended byorg.geotools.coverage.grid.Interpolator2D
All Implemented Interfaces:
org.opengis.coverage.Coverage, org.opengis.coverage.grid.GridCoverage, javax.media.jai.PropertySource, RenderedCoverage, java.io.Serializable

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 plain GridCoverage2D class for that). It should work for other kinds of interpolation however.

Since:
2.2
Version:
$Id: Interpolator2D.java 17672 2006-01-19 00:25:55Z desruisseaux $
Author:
Martin Desruisseaux
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.geotools.coverage.grid.GridCoverage2D
GridCoverage2D.Renderable
 
Field Summary
 
Fields inherited from class org.geotools.coverage.grid.GridCoverage2D
gridGeometry, image
 
Fields inherited from class org.geotools.coverage.grid.AbstractGridCoverage
LOGGER
 
Fields inherited from class org.geotools.coverage.AbstractCoverage
crs
 
Fields inherited from class javax.media.jai.PropertySourceImpl
cachedPropertyNames, properties, propertySources
 
Method Summary
static GridCoverage2D create(GridCoverage2D coverage)
          Constructs a new interpolator using default interpolations.
static GridCoverage2D create(GridCoverage2D coverage, javax.media.jai.Interpolation interpolation)
          Constructs a new interpolator for a single interpolation.
static GridCoverage2D create(GridCoverage2D coverage, javax.media.jai.Interpolation[] interpolations)
          Constructs a new interpolator for an interpolation and its fallbacks.
protected  GridCoverage2D createGeophysics(boolean geo)
          Invoked by GridCoverage2D.geophysics(boolean) when the packed or geophysics companion of this grid coverage need to be created.
 double[] evaluate(java.awt.geom.Point2D coord, double[] dest)
          Returns a sequence of double values for a given two-dimensional point in the coverage.
 float[] evaluate(java.awt.geom.Point2D coord, float[] dest)
          Returns a sequence of float values for a given two-dimensional point in the coverage.
 int[] evaluate(java.awt.geom.Point2D coord, int[] dest)
          Returns a sequence of integer values for a given two-dimensional point in the coverage.
 javax.media.jai.Interpolation getInterpolation()
          Returns the primary interpolation used by this .
 javax.media.jai.Interpolation[] getInterpolations()
          Returns interpolations.
 
Methods inherited from class org.geotools.coverage.grid.GridCoverage2D
evaluate, evaluate, evaluate, evaluate, evaluate, geophysics, getCoordinateReferenceSystem2D, getDebugString, getEnvelope, getEnvelope2D, getGridGeometry, getNumSampleDimensions, getOptimalDataBlockSizes, getRenderableImage, getRenderedImage, getSampleDimension, getSampleDimensions, isDataEditable, prefetch, show
 
Methods inherited from class org.geotools.coverage.grid.AbstractGridCoverage
getDataBlock, getDataBlock, getDataBlock, getDataBlock, getDataBlock, getDataBlock, getGridPacking, getNumOverviews, getOverview, getOverviewGridGeometry, getPackedDataBlock, getSources, pointOutsideCoverage, pointOutsideCoverage, setDataBlock, setDataBlock, setDataBlock, setDataBlock, setDataBlock, setDataBlock, setPackedDataBlock
 
Methods inherited from class org.geotools.coverage.AbstractCoverage
dispose, evaluate, getCoordinateReferenceSystem, getDimension, getDimensionNames, getDimensionNames, getLocale, getMetadataNames, getMetadataValue, getName, show, toString
 
Methods inherited from class javax.media.jai.PropertySourceImpl
getProperties, getProperty, getPropertyClass, getPropertyNames, getPropertyNames
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.opengis.coverage.grid.GridCoverage
getDataBlock, getDataBlock, getDataBlock, getDataBlock, getDataBlock, getDataBlock, getGridPacking, getNumOverviews, getOverview, getOverviewGridGeometry, getPackedDataBlock, setDataBlock, setDataBlock, setDataBlock, setDataBlock, setDataBlock, setDataBlock, setPackedDataBlock
 
Methods inherited from interface org.opengis.coverage.Coverage
evaluate, getCoordinateReferenceSystem, getDimensionNames, getMetadataNames, getMetadataValue, getSources
 
Methods inherited from interface javax.media.jai.PropertySource
getProperty, getPropertyClass, getPropertyNames, getPropertyNames
 

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,
                                    javax.media.jai.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,
                                    javax.media.jai.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).

createGeophysics

protected GridCoverage2D createGeophysics(boolean geo)
Invoked by GridCoverage2D.geophysics(boolean) when the packed or geophysics companion of this grid coverage need to be created. This method apply to the new grid coverage the same interpolation than this grid coverage.

Overrides:
createGeophysics in class GridCoverage2D
Parameters:
geo - to get a grid coverage with sample values equals to geophysics values, or to get the packed version.
Returns:
The newly created grid coverage.

getInterpolations

public javax.media.jai.Interpolation[] getInterpolations()
Returns interpolations. The first array's element is the interpolation for this grid coverage. Other elements (if any) are fallbacks.


getInterpolation

public javax.media.jai.Interpolation getInterpolation()
Returns the primary interpolation used by this .

Overrides:
getInterpolation in class GridCoverage2D
Returns:
The interpolation.

evaluate

public int[] evaluate(java.awt.geom.Point2D coord,
                      int[] dest)
               throws org.opengis.coverage.CannotEvaluateException
Returns a sequence of integer values for a given two-dimensional point in the coverage.

Overrides:
evaluate in class GridCoverage2D
Parameters:
coord - The coordinate point where to evaluate.
dest - An array in which to store values, or .
Returns:
An array containing values.
Throws:
org.opengis.coverage.CannotEvaluateException - if the values can't be computed at the specified coordinate. More specifically, PointOutsideCoverageException is thrown if the evaluation failed because the input point has invalid coordinates.

evaluate

public float[] evaluate(java.awt.geom.Point2D coord,
                        float[] dest)
                 throws org.opengis.coverage.CannotEvaluateException
Returns a sequence of float values for a given two-dimensional point in the coverage.

Overrides:
evaluate in class GridCoverage2D
Parameters:
coord - The coordinate point where to evaluate.
dest - An array in which to store values, or .
Returns:
An array containing values.
Throws:
org.opengis.coverage.CannotEvaluateException - if the values can't be computed at the specified coordinate. More specifically, PointOutsideCoverageException is thrown if the evaluation failed because the input point has invalid coordinates.

evaluate

public double[] evaluate(java.awt.geom.Point2D coord,
                         double[] dest)
                  throws org.opengis.coverage.CannotEvaluateException
Returns a sequence of double values for a given two-dimensional point in the coverage.

Overrides:
evaluate in class GridCoverage2D
Parameters:
coord - The coordinate point where to evaluate.
dest - An array in which to store values, or .
Returns:
An array containing values.
Throws:
org.opengis.coverage.CannotEvaluateException - if the values can't be computed at the specified coordinate. More specifically, PointOutsideCoverageException is thrown if the evaluation failed because the input point has invalid coordinates.


Copyright © GeoTools. All Rights Reserved.