 Object

 CodeList<InterpolationMethod>

 InterpolationMethod

 All Implemented Interfaces:
Serializable
,Comparable<InterpolationMethod>
,ControlledVocabulary
@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). SinceInterpolationMethod
is aCodeList
, it may be extended in an application schema that specifies additional interpolation methods.Interpolation methods Method Coverage Type Value object dimension Nearest Neighbour Any 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 Grid 2 Barycentric TIN 2  Since:
 GeoAPI 2.1
 See Also:
 Serialized Form


Nested Class Summary

Nested classes/interfaces inherited from class CodeList
CodeList.Filter


Field Summary
Fields Modifier and Type Field Description 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
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description InterpolationMethod[]
family()
Returns the list of codes of the same kind than this code list element.static InterpolationMethod
valueOf(String code)
Returns the interpolation method that matches the given string, or returns a new one if none match it.static InterpolationMethod[]
values()
Returns the list ofInterpolationMethod
s.
Methods inherited from class CodeList
compareTo, identifier, name, names, ordinal, readResolve, toString, valueOf, valueOf




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 + b⋅x
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 arclength parameter.
Given two point value pairs (p_{s}, v_{s}) and (p_{t}, v_{t}), where p_{s} is the start point and p_{t} is the end point of a value segment, and v_{s} and v_{t} are the feature attribute values associated with those points, the feature attribute value v_{i} associated with the direct position p_{i} is:
v_{i} = v_{s} + (v_{t}  v_{s}) ((p_{i}  p_{s})/(p_{t}  p_{s}))

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 + b⋅x + c⋅x²
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 + b⋅x + c⋅x² + d⋅x³
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 ofInterpolationMethod
s. Returns:
 the list of codes declared in the current JVM.

family
public InterpolationMethod[] family()
Returns the list of codes of the same kind than this code list element. Invoking this method is equivalent to invokingvalues()
, except that this method can be invoked on an instance of the parentCodeList
class. Specified by:
family
in interfaceControlledVocabulary
 Specified by:
family
in classCodeList<InterpolationMethod>
 Returns:
 all code values for this code list.

valueOf
public static InterpolationMethod valueOf(String code)
Returns the interpolation method that matches the given string, or returns a new one if none match it. More specifically, this methods returns the first instance for whichname().equals(code)
returnstrue
. If no existing instance is found, then a new one is created for the given name. Parameters:
code
 the name of the code to fetch or to create. Returns:
 a code matching the given name.

