org.opengis.coverage
Class InterpolationMethod

Object
  extended by CodeList<InterpolationMethod>
      extended by InterpolationMethod
All Implemented Interfaces:
Serializable, Comparable<InterpolationMethod>

@UML(identifier="CV_InterpolationMethod",
     specification=ISO_19123)
public class InterpolationMethod
extends CodeList<InterpolationMethod>

A list of codes that identify interpolation methods that may be used for evaluating continuous coverages. Evaluation of a continuous coverage involves interpolation between known feature attribute values associated with geometric objects in the domain of the discrete coverage that is provided as control for the continuous coverage. This code list includes 9 interpolation methods. Each is used in the context of specified geometric configurations (table below). Since InterpolationMethod is a CodeList, it may be extended in an application schema that specifies additional interpolation methods.

Method Coverage Type Value object dimension
Nearest NeighbourAny Any
Linear Segmented Curve 1
Quadratic Segmented Curve 1
Cubic Segmented Curve 1
Bilinear Quadrilateral Grid 2
Biquadratic Quadrilateral Grid 2
Bicubic Quadrilateral Grid 2
Lost Area Thiessen Polygon, Hexagonal Grid2
Barycentric TIN 2

See Also:
Serialized Form

Field Summary
static InterpolationMethod BARYCENTRIC
          Barycentric interpolation.
static InterpolationMethod BICUBIC
          Interpolation based on the assumption that feature attribute values vary as a bicubic function of position within the grid cell.
static InterpolationMethod BILINEAR
          Interpolation based on the assumption that feature attribute values vary as a bilinear function of position within the grid cell.
static InterpolationMethod BIQUADRATIC
          Interpolation based on the assumption that feature attribute values vary as a biquadratic function of position within the grid cell.
static InterpolationMethod CUBIC
          Interpolation based on the assumption that feature attribute values vary as a cubic function of distance along a value segment.
static InterpolationMethod LINEAR
          Interpolation based on the assumption that feature attribute values vary in proportion to distance along a value segment.
static InterpolationMethod LOST_AREA
          Lost area interpolation.
static InterpolationMethod NEAREST_NEIGHBOUR
          Generates a feature attribute value at a direct position by assigning it the feature attribute value associated with the nearest domain object in the domain of the coverage.
static InterpolationMethod QUADRATIC
          Interpolation based on the assumption that feature attribute values vary as a quadratic function of distance along a value segment.
 
Method Summary
 CodeList[] family()
          Returns the list of enumerations of the same kind than this enum.
static InterpolationMethod valueOf(String code)
          Returns the InterpolationMethod that matches the given string, or returns a new one if none match it.
static InterpolationMethod[] values()
          Returns the list of InterpolationMethods.
 
Methods inherited from class CodeList
compareTo, name, ordinal, readResolve, toString
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

NEAREST_NEIGHBOUR

@UML(identifier="Nearest neighbour",
     obligation=CONDITIONAL,
     specification=ISO_19123)
public static final InterpolationMethod NEAREST_NEIGHBOUR
Generates a feature attribute value at a direct position by assigning it the feature attribute value associated with the nearest domain object in the domain of the coverage. Nearest neighbour interpolation extends a discrete coverage to a step function defined on the convex hull of the domain objects in the domain of the coverage. Nearest neighbour interpolation is the only interpolation method described in ISO 19123 that can be used to interpolate attributes that have nominal or ordinal values.

NOTE: In the case of a discrete point coverage, the "steps" of the step function are the Thiessen polygons generated by the set of points in the domain of the coverage.


LINEAR

@UML(identifier="Linear interpolation",
     obligation=CONDITIONAL,
     specification=ISO_19123)
public static final InterpolationMethod LINEAR
Interpolation based on the assumption that feature attribute values vary in proportion to distance along a value segment.

v = a + bx

Linear interpolation may be used to interpolate feature attribute values along a line segment connecting any two point value pairs. It may also be used to interpolate feature attribute values at positions along a curve of any form, if the positions are described by values of an arc-length parameter.

Given two point value pairs (ps, vs) and (pt, vt), where ps is the start point and pt is the end point of a value segment, and vs and vt are the feature attribute values associated with those points, the feature attribute value vi associated with the direct position pi is:

vi = vs + (vt - vs) ((pi - ps)/(pt - ps))


QUADRATIC

@UML(identifier="Quadratic interpolation",
     obligation=CONDITIONAL,
     specification=ISO_19123)
public static final InterpolationMethod QUADRATIC
Interpolation based on the assumption that feature attribute values vary as a quadratic function of distance along a value segment.

v = a + bx + cx2

where a is the value of a feature attribute at the start of a value segment and v is the value of a feature attribute at distance x along the curve from the start. Three point value pairs are needed to provide control values for calculating the coefficients of the function.


CUBIC

@UML(identifier="Cubic interpolation",
     obligation=CONDITIONAL,
     specification=ISO_19123)
public static final InterpolationMethod CUBIC
Interpolation based on the assumption that feature attribute values vary as a cubic function of distance along a value segment.

v = a + bx + cx2 + dx3

where a is the value of a feature attribute at the start of a value segment and v is the value of a feature attribute at distance x along the curve from the start. Four point value pairs are needed to provide control values for calculating the coefficients of the function.


BILINEAR

@UML(identifier="Bilinear interpolation",
     obligation=CONDITIONAL,
     specification=ISO_19123)
public static final InterpolationMethod BILINEAR
Interpolation based on the assumption that feature attribute values vary as a bilinear function of position within the grid cell.


BIQUADRATIC

@UML(identifier="Biquadratic interpolation",
     obligation=CONDITIONAL,
     specification=ISO_19123)
public static final InterpolationMethod BIQUADRATIC
Interpolation based on the assumption that feature attribute values vary as a biquadratic function of position within the grid cell.


BICUBIC

@UML(identifier="Bicubic interpolation",
     obligation=CONDITIONAL,
     specification=ISO_19123)
public static final InterpolationMethod BICUBIC
Interpolation based on the assumption that feature attribute values vary as a bicubic function of position within the grid cell.


LOST_AREA

@UML(identifier="Lost area interpolation",
     obligation=CONDITIONAL,
     specification=ISO_19123)
public static final InterpolationMethod LOST_AREA
Lost area interpolation.


BARYCENTRIC

@UML(identifier="Barycentric interpolation",
     obligation=CONDITIONAL,
     specification=ISO_19123)
public static final InterpolationMethod BARYCENTRIC
Barycentric interpolation.

Method Detail

values

public static InterpolationMethod[] values()
Returns the list of InterpolationMethods.


family

public CodeList[] family()
Returns the list of enumerations of the same kind than this enum.

Specified by:
family in class CodeList<InterpolationMethod>

valueOf

public static InterpolationMethod valueOf(String code)
Returns the InterpolationMethod that matches the given string, or returns a new one if none match it.



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