org.geotools.referencing.crs
Class DefaultVerticalCRS

Object
  extended by Formattable
      extended by AbstractIdentifiedObject
          extended by AbstractReferenceSystem
              extended by AbstractCRS
                  extended by AbstractSingleCRS
                      extended by DefaultVerticalCRS
All Implemented Interfaces:
Serializable, CoordinateReferenceSystem, SingleCRS, VerticalCRS, IdentifiedObject, ReferenceSystem

public class DefaultVerticalCRS
extends AbstractSingleCRS
implements VerticalCRS

A 1D coordinate reference system used for recording heights or depths. Vertical CRSs make use of the direction of gravity to define the concept of height or depth, but the relationship with gravity may not be straightforward.

By implication, ellipsoidal heights (h) cannot be captured in a vertical coordinate reference system. Ellipsoidal heights cannot exist independently, but only as inseparable part of a 3D coordinate tuple defined in a geographic 3D coordinate reference system. However GeoAPI does not enforce this rule. This class defines a ELLIPSOIDAL_HEIGHT constant in violation with ISO 19111; this is considered okay if this constant is used merely as a step toward the construction of a 3D CRS (for example in a transient state during WKT parsing), or for passing arguments in methods enforcing type-safety.

Used with CS type(s)
Vertical

Since:
2.1
Author:
Martin Desruisseaux (IRD)
See Also:
Serialized Form
Module:

Field Summary
static DefaultVerticalCRS ELLIPSOIDAL_HEIGHT
          Default vertical coordinate reference system using ellipsoidal datum.
static DefaultVerticalCRS GEOIDAL_HEIGHT
          Default vertical coordinate reference system using geoidal datum.
 
Fields inherited from class AbstractSingleCRS
datum
 
Fields inherited from class AbstractCRS
coordinateSystem
 
Fields inherited from class AbstractIdentifiedObject
EMPTY_ALIAS_ARRAY, EMPTY_IDENTIFIER_ARRAY, IDENTIFIER_COMPARATOR, NAME_COMPARATOR, REMARKS_COMPARATOR
 
Fields inherited from class Formattable
SINGLE_LINE
 
Fields inherited from interface ReferenceSystem
DOMAIN_OF_VALIDITY_KEY, SCOPE_KEY
 
Fields inherited from interface IdentifiedObject
ALIAS_KEY, IDENTIFIERS_KEY, NAME_KEY, REMARKS_KEY
 
Constructor Summary
DefaultVerticalCRS(Map<String,?> properties, VerticalDatum datum, VerticalCS cs)
          Constructs a vertical CRS from a set of properties.
DefaultVerticalCRS(String name, VerticalDatum datum, VerticalCS cs)
          Constructs a vertical CRS from a name.
DefaultVerticalCRS(VerticalCRS crs)
          Constructs a new vertical CRS with the same values than the specified one.
DefaultVerticalCRS(VerticalDatum datum, VerticalCS cs)
          Constructs a vertical CRS with the same properties than the given datum.
 
Method Summary
protected  String formatWKT(Formatter formatter)
          Format the inner part of a Well Known Text (WKT) element.
 VerticalCS getCoordinateSystem()
          Returns the coordinate system.
 VerticalDatum getDatum()
          Returns the datum.
 int hashCode()
          Returns a hash value for this geographic CRS.
 
Methods inherited from class AbstractSingleCRS
equals, getAxis, getDimension
 
Methods inherited from class AbstractCRS
distance
 
Methods inherited from class AbstractReferenceSystem
getDomainOfValidity, getScope, getValidArea
 
Methods inherited from class AbstractIdentifiedObject
asSet, ensureAngularUnit, ensureLinearUnit, ensureNonNull, ensureNonNull, ensureTimeUnit, equals, equals, equals, equals, getAlias, getIdentifier, getIdentifier, getIdentifiers, getName, getName, getName, getProperties, getProperties, getRemarks, nameMatches, nameMatches, nameMatches
 
Methods inherited from class Formattable
toString, toWKT, toWKT, toWKT
 
Methods inherited from class Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface ReferenceSystem
getDomainOfValidity, getScope
 
Methods inherited from interface IdentifiedObject
getAlias, getIdentifiers, getName, getRemarks, toWKT
 

Field Detail

ELLIPSOIDAL_HEIGHT

public static final DefaultVerticalCRS ELLIPSOIDAL_HEIGHT
Default vertical coordinate reference system using ellipsoidal datum. Ellipsoidal heights are measured along the normal to the ellipsoid used in the definition of horizontal datum.

See Also:
DefaultVerticalDatum.ELLIPSOIDAL, DefaultVerticalCS.ELLIPSOIDAL_HEIGHT

GEOIDAL_HEIGHT

public static final DefaultVerticalCRS GEOIDAL_HEIGHT
Default vertical coordinate reference system using geoidal datum.

Since:
2.5
See Also:
DefaultVerticalDatum.GEOIDAL, DefaultVerticalCS.GRAVITY_RELATED_HEIGHT
Constructor Detail

DefaultVerticalCRS

public DefaultVerticalCRS(VerticalCRS crs)
Constructs a new vertical CRS with the same values than the specified one. This copy constructor provides a way to wrap an arbitrary implementation into a Geotools one or a user-defined one (as a subclass), usually in order to leverage some implementation-specific API. This constructor performs a shallow copy, i.e. the properties are not cloned.

Since:
2.2

DefaultVerticalCRS

public DefaultVerticalCRS(VerticalDatum datum,
                          VerticalCS cs)
Constructs a vertical CRS with the same properties than the given datum. The inherited properties include the name and aliases.

Parameters:
datum - The datum.
cs - The coordinate system.
Since:
2.5

DefaultVerticalCRS

public DefaultVerticalCRS(String name,
                          VerticalDatum datum,
                          VerticalCS cs)
Constructs a vertical CRS from a name.

Parameters:
name - The name.
datum - The datum.
cs - The coordinate system.

DefaultVerticalCRS

public DefaultVerticalCRS(Map<String,?> properties,
                          VerticalDatum datum,
                          VerticalCS cs)
Constructs a vertical CRS from a set of properties. The properties are given unchanged to the super-class constructor.

Parameters:
properties - Set of properties. Should contains at least "name".
datum - The datum.
cs - The coordinate system.
Method Detail

getCoordinateSystem

public VerticalCS getCoordinateSystem()
Returns the coordinate system.

Specified by:
getCoordinateSystem in interface CoordinateReferenceSystem
Specified by:
getCoordinateSystem in interface SingleCRS
Specified by:
getCoordinateSystem in interface VerticalCRS
Overrides:
getCoordinateSystem in class AbstractCRS

getDatum

public VerticalDatum getDatum()
Returns the datum.

Specified by:
getDatum in interface SingleCRS
Specified by:
getDatum in interface VerticalCRS
Overrides:
getDatum in class AbstractSingleCRS
Returns:
The datum.

hashCode

public int hashCode()
Returns a hash value for this geographic CRS.

Overrides:
hashCode in class AbstractSingleCRS
Returns:
The hash code value. This value doesn't need to be the same in past or future versions of this class.

formatWKT

protected String formatWKT(Formatter formatter)
Format the inner part of a Well Known Text (WKT) element.

Overrides:
formatWKT in class AbstractCRS
Parameters:
formatter - The formatter to use.
Returns:
The name of the WKT element type, which is "VERT_CS".
See Also:
Formattable.toWKT(), Formattable.toString()


Copyright © 1996-2009 Geotools. All Rights Reserved.