Class 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
    Since:
    GeoAPI 2.1
    Author:
    Martin Desruisseaux (IRD)
    See Also:
    Serialized Form
    • 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.

    • Method Detail

      • values

        public static InterpolationMethod[] values()
        Returns the list of InterpolationMethods.
        Returns:
        The list of codes declared in the current JVM.
      • 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.
        Parameters:
        code - The name of the code to fetch or to create.
        Returns:
        A code matching the given name.