org.opengis.geometry.primitive
Class CurveInterpolation

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

@UML(identifier="GM_CurveInterpolation",
     specification=ISO_19107)
public final class CurveInterpolation
extends CodeList<CurveInterpolation>

List of codes that may be used to identify the interpolation mechanisms. As a code list, there is no intention of limiting the potential values of CurveInterpolation. Subtypes of CurveSegment can be spawned directly through subclassing, or indirectly by specifying an interpolation method and an associated control parameters record to support it.

Since:
GeoAPI 1.0
Version:
ISO 19107
See Also:
Serialized Form

Field Summary
static CurveInterpolation CIRCULAR_ARC_2_POINTS_WITH_BULGE
          For each consecutive pair of control points, the interpolation mechanism shall return direct positions on a circular arc passing from the first control point to the second control point, such that the associated control parameter determines the offset of the center of the arc from the center point of the chord, positive for leftward and negative for rightward.
static CurveInterpolation CIRCULAR_ARC_3_POINTS
          For each set of three consecutive control points, the middle one being an even offset from the beginning of the sequence of control points, the interpolation mechanism shall return direct positions on a circular arc passing from the first point through the middle point to the third point.
static CurveInterpolation CLOTHOID
          Uses a Cornu's spiral or clothoid interpolation.
static CurveInterpolation CONIC
          Same as elliptical arc but using 5 consecutive control points to determine a conic section.
static CurveInterpolation CUBIC_SPLINE
          The control points are interpolated using initial tangents and cubic polynomials, a form of degree 3 polynomial spline.
static CurveInterpolation ELLIPTICAL
          For each set of four consecutive control points, the interpolation mechanism shall return direct positions on an elliptical arc passing from the first control point through the middle control points in order to the fourth control point.
static CurveInterpolation GEODESIC
          The interpolation mechanism shall return direct positions on a geodesic curve between each consecutive pair of control points.
static CurveInterpolation LINEAR
          The interpolation mechanism shall return direct positions on a straight line between each consecutive pair of control points.
static CurveInterpolation POLYNOMIAL_SPLINE
          The control points are ordered as in a line-string, but they are spanned by a polynomial spline function.
static CurveInterpolation RATIONAL_SPLINE
          The control points are ordered as in a line string, but they are spanned by a rational (quotient of polynomials) spline function.
 
Method Summary
 CodeList[] family()
          Returns the list of enumerations of the same kind than this enum.
static CurveInterpolation valueOf(String code)
          Returns the CoverageContentType that matches the given string, or returns a new one if none match it.
static CurveInterpolation[] values()
          Returns the list of CurveInterpolations.
 
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

LINEAR

@UML(identifier="linear",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation LINEAR
The interpolation mechanism shall return direct positions on a straight line between each consecutive pair of control points.


GEODESIC

@UML(identifier="geodesic",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation GEODESIC
The interpolation mechanism shall return direct positions on a geodesic curve between each consecutive pair of control points. A geodesic curve is a curve of shortest length. The geodesic shall be determined in the coordinate reference system of the curve in which the curve segment is used.


CIRCULAR_ARC_3_POINTS

@UML(identifier="circularArc3Points",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation CIRCULAR_ARC_3_POINTS
For each set of three consecutive control points, the middle one being an even offset from the beginning of the sequence of control points, the interpolation mechanism shall return direct positions on a circular arc passing from the first point through the middle point to the third point. The sequence of control points shall have an odd number of elements. If the 3 points are co-linear, the circular arc becomes a straight line.


CIRCULAR_ARC_2_POINTS_WITH_BULGE

@UML(identifier="circularArc2PointWithBulge",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation CIRCULAR_ARC_2_POINTS_WITH_BULGE
For each consecutive pair of control points, the interpolation mechanism shall return direct positions on a circular arc passing from the first control point to the second control point, such that the associated control parameter determines the offset of the center of the arc from the center point of the chord, positive for leftward and negative for rightward. This form shall only be used in 2 dimensions because of the restricted nature of the definition technique.


ELLIPTICAL

@UML(identifier="elliptical",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation ELLIPTICAL
For each set of four consecutive control points, the interpolation mechanism shall return direct positions on an elliptical arc passing from the first control point through the middle control points in order to the fourth control point. If the 4 control points are co-linear, the arc becomes a straight line. If the 4 control points are on the same circle, the arc becomes a circular one.


CLOTHOID

@UML(identifier="clothoid",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation CLOTHOID
Uses a Cornu's spiral or clothoid interpolation.


CONIC

@UML(identifier="conic",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation CONIC
Same as elliptical arc but using 5 consecutive control points to determine a conic section.


POLYNOMIAL_SPLINE

@UML(identifier="polynomialSpline",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation POLYNOMIAL_SPLINE
The control points are ordered as in a line-string, but they are spanned by a polynomial spline function. Normally, the degree of continuity is determined by the degree of the polynomials chosen.


CUBIC_SPLINE

@UML(identifier="cubicSpline",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation CUBIC_SPLINE
The control points are interpolated using initial tangents and cubic polynomials, a form of degree 3 polynomial spline.


RATIONAL_SPLINE

@UML(identifier="rationalSpline",
     obligation=CONDITIONAL,
     specification=ISO_19107)
public static final CurveInterpolation RATIONAL_SPLINE
The control points are ordered as in a line string, but they are spanned by a rational (quotient of polynomials) spline function. Normally, the degree of continuity is determined by the degree of the polynomials chosen.

Method Detail

values

public static CurveInterpolation[] values()
Returns the list of CurveInterpolations.


family

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

Specified by:
family in class CodeList<CurveInterpolation>

valueOf

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



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