Class VerticalDatumType

  • All Implemented Interfaces:
    Serializable, Comparable<VerticalDatumType>, ControlledVocabulary

    @UML(identifier="CD_VerticalDatumType",
         specification=ISO_19111)
    public final class VerticalDatumType
    extends CodeList<VerticalDatumType>
    Type of a vertical datum.
    Note: ISO 19111 omits the definition of an ELLIPSOIDAL vertical height on intent. GeographicCRS with ellipsoidal height shall be backed by a three-dimensional EllipsoidalCS; they should never be built as CompoundCRS. If nevertheless an ellipsoidal height is needed (for example in order to process a CRS in the WKT 1 format), implementors can get a suitable vertical datum type using VerticalDatumType.valueOf("ELLIPSOIDAL"). Implementors are encouraged to not expose that datum type in public API however.
    Since:
    1.0
    See Also:
    VerticalDatum.getVerticalDatumType(), Serialized Form
    Departure from OGC/ISO specification:
    This code list was defined in the specification published in 2003, but removed from the 2007 revision of ISO 19111. However GeoAPI keep this code list for historical reasons, and because it provides some of the anchor definition information in a programmatic way more suitable to coordinate transformation engines.
    • Field Detail

      • OTHER_SURFACE

        @UML(identifier="other surface",
             obligation=CONDITIONAL,
             specification=ISO_19111)
        public static final VerticalDatumType OTHER_SURFACE
        In some cases, for example oil exploration and production, a geological feature, such as the top or bottom of a geologically identifiable and meaningful subsurface layer, is used as a vertical datum. Other variations to the above three vertical datum types may exist and are all included in this type.
      • GEOIDAL

        @UML(identifier="geoidal",
             obligation=CONDITIONAL,
             specification=ISO_19111)
        public static final VerticalDatumType GEOIDAL
        The zero value of the associated vertical coordinate system axis is defined to approximate a constant potential surface, usually the geoid. Such a reference surface is usually determined by a national or scientific authority, and is then a well-known, named datum.
      • DEPTH

        @UML(identifier="depth",
             obligation=CONDITIONAL,
             specification=ISO_19111)
        public static final VerticalDatumType DEPTH
        The zero point of the vertical axis is defined by a surface that has meaning for the purpose which the associated vertical measurements are used for. For hydrographic charts, this is often a predicted nominal sea surface (i.e., without waves or other wind and current effects) that occurs at low tide. Depths are measured in the direction perpendicular (approximately) to the actual equipotential surfaces of the earth's gravity field, using such procedures as echo-sounding.
      • BAROMETRIC

        @UML(identifier="barometric",
             obligation=CONDITIONAL,
             specification=ISO_19111)
        public static final VerticalDatumType BAROMETRIC
        Atmospheric pressure is the basis for the definition of the origin of the associated vertical coordinate system axis. These are approximations of orthometric heights obtained with the help of a barometer or a barometric altimeter. These values are usually expressed in one of the following units: meters, feet, millibars (used to measure pressure levels), or theta value (units used to measure geopotential height).
    • Method Detail

      • values

        public static VerticalDatumType[] values()
        Returns the list of VerticalDatumTypes.
        Returns:
        the list of codes declared in the current JVM.
      • valueOf

        public static VerticalDatumType valueOf​(String code)
        Returns the vertical datum type that matches the given string, or returns a new one if none match it. More specifically, this methods returns the first instance for which name().equals(code) returns true. 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.