## org.opengis.coverage.grid
Interface ContinuousQuadrilateralGridCoverage

All Superinterfaces:
  ContinuousCoverage, Coverage

    @UML(identifier="CV_ContinousQuadrilateralGridCoverage",
         specification=ISO_19123)
    public interface ContinuousQuadrilateralGridCoverage

extends ContinuousCoverage

A continuous coverage that operates on a grid values matrix. The domain of a continuous quadrilateral grid coverage is the convex hull of the collection of grid points defined by the grid values matrix. Evaluation of a continuous quadrilateral grid coverage generates feature attribute values at direct positions within the convex hull of the grid points provided by the grid values matrix. The general idea is to extend the coverage to direct positions within the interior of each grid cell by interpolation from the grid points at the corners of the cell.

Method Summary
`Set` `evaluate(DirectPosition p, Collection<String> list)` Returns a set of records of feature attribute values for the specified direct position.
`Set<GridValueCell>` `getElements()` Returns the set of grid value cells that provide the structure to support the evaluate operation.
`InterpolationMethod` `getInterpolationMethod()` Returns a code that identifies the interpolation method that shall be used to derive a feature attribute value at any direct position within the grid value cell.
`GridValuesMatrix` `getSource()` Provides the data for the evaluate operation.
`Set<GridValueCell>` `locate(DirectPosition p)` Returns the grid value cell that contains the specified direct position.
`GridValueCell` `locateCell(DirectPosition p)` Returns the grid value cell that contains the specified direct position.

Methods inherited from interface ContinuousCoverage
`evaluate, evaluateInverse, getInterpolationParameterTypes, select`

Methods inherited from interface Coverage
`evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, find, find, getCommonPointRule, getCoordinateReferenceSystem, getDimensionNames, getDomainElements, getDomainExtents, getEnvelope, getMetadataNames, getMetadataValue, getNumSampleDimensions, getRangeElements, getRangeType, getRenderableImage, getSampleDimension, getSources, list`

Method Detail

### getElements

    @UML(identifier="element",
         obligation=MANDATORY,
         specification=ISO_19123)
    Set<GridValueCell> getElements()

  Returns the set of grid value cells that provide the structure to support the evaluate operation.

  Specified by:
    `getElements` in interface `ContinuousCoverage`

### getInterpolationMethod

    @UML(identifier="interpolationType",
         obligation=MANDATORY,
         specification=ISO_19123)
    InterpolationMethod getInterpolationMethod()

  Returns a code that identifies the interpolation method that shall be used to derive a feature attribute value at any direct position within the grid value cell. This value is often bilinear.

  Specified by:
    `getInterpolationMethod` in interface `ContinuousCoverage`

### locate

    @UML(identifier="locate",
         obligation=MANDATORY,
         specification=ISO_19123)
    Set<GridValueCell> locate(DirectPosition p)

  Returns the grid value cell that contains the specified direct position. This method always returns a set of 1 member.

  Specified by:
    `locate` in interface `ContinuousCoverage`

### locateCell

    @Extension
    GridValueCell locateCell(DirectPosition p)

  Returns the grid value cell that contains the specified direct position. This is a convenience method for `locate(p).iterator().next()`.

  TODO:
    Consider moving this method in some parent class. It may force a renaming as `locateFirst`.

### evaluate

    @UML(identifier="evaluate",
         obligation=MANDATORY,
         specification=ISO_19123)
    Set evaluate(DirectPosition p,
                                                                        Collection<String> list)

  Returns a set of records of feature attribute values for the specified direct position. Evaluation of a continuous quadrilateral grid coverage involves two steps. The first is to use the information from the values matrix at quadrilateral grid coverage source to generate the grid value cell that contains the input direct position; the second is to interpolate the feature attribute values at the direct position from the grid point value pairs at the corners of the grid value cell. Some interpolation methods (e.g. bicubic interpolation) may require the use of grid point value pairs outside of the grid value cell that contains the direct position.

  NOTE: Nearest neighbour interpolation will return for any direct position within a grid value cell the record associated with the grid point value pair at the nearest corner of the grid value cell. In other words, a continuous grid coverage that uses nearest neighbour interpolation acts as a discrete surface coverage.

  TODO:
    The return type should be Set<Record>.

### getSource

    @UML(identifier="source",
         obligation=MANDATORY,
         specification=ISO_19123)
    GridValuesMatrix getSource()

  Provides the data for the evaluate operation.

Copyright © 1994-2008 Open Geospatial Consortium. All Rights Reserved.