Interface CoordinateReferenceSystem

All Superinterfaces:
IdentifiedObject, ReferenceSystem
All Known Subinterfaces:
CompoundCRS, DerivedCRS, EngineeringCRS, GeneralDerivedCRS, GeocentricCRS, GeodeticCRS, GeographicCRS, ImageCRS, ParametricCRS, ProjectedCRS, SingleCRS, TemporalCRS, VerticalCRS
All Known Implementing Classes:
SimpleCRS, SimpleCRS.Geographic, SimpleCRS.Temporal, SimpleCRS.Vertical

@Classifier(ABSTRACT) @UML(identifier="SC_CRS", specification=ISO_19111) public interface CoordinateReferenceSystem extends ReferenceSystem
Base type of all Coordinate Reference Systems (CRS). This is the base interface for two cases:


A coordinate reference system (CRS) captures the choice of values for the parameters that constitute the degrees of freedom of the coordinate space. The fact that such a choice has to be made, either arbitrarily or by adopting values from survey measurements, leads to the large number of coordinate reference systems in use around the world. It is also the cause of the little understood fact that the latitude and longitude of a point are not unique. Without the full specification of the coordinate reference system, coordinates are ambiguous at best and meaningless at worst.

Spatio-temporal CRS

The concept of coordinates may be expanded from a strictly spatial context to include time. Time is then added as another coordinate to the coordinate tuple. It is even possible to add two time-coordinates, provided the two coordinates describe different independent quantities. An example of the latter is the time/space position of a subsurface point of which the vertical coordinate is expressed as the two-way travel time of a sound signal in milliseconds, as is common in seismic imaging. A second time-coordinate indicates the time of observation, usually expressed in whole years.
  • Method Details

    • getCoordinateSystem

      CoordinateSystem getCoordinateSystem()
      Returns the coordinate system of a single CRS, or a view over all coordinate systems of a compound CRS. More specifically:
      • If the CRS instance on which this method is invoked is an instance of the SingleCRS interface, then the CS instance which is returned shall be one of the defined sub-interfaces of CoordinateSystem.
      • If the CRS instance on which this method is invoked is an instance of the CompoundCRS interface, then the CS instance which is returned shall have a dimension equals to the sum of the dimensions of all components, and axes obtained from the coordinate system of each component.
      the coordinate system.
      Departure from OGC/ISO abstract specification:
      Generalization by relaxation of ISO/OGC restriction ISO 19111 defines this method for SC_SingleCRS only. GeoAPI declares this method in this parent interface for user convenience, since CS dimension and axes are commonly requested information and will always be available, directly or indirectly, even for SC_CompoundCRS.