- All Superinterfaces:
CoordinateReferenceSystem
,IdentifiedObject
,ReferenceSystem
@UML(identifier="SC_CompoundCRS",
specification=ISO_19111)
public interface CompoundCRS
extends CoordinateReferenceSystem
A coordinate reference system describing the position of points through two or more
independent coordinate reference systems. Thus it is indirectly associated with two
or more coordinate systems
and datums by defining the compound
CRS as an ordered set of two or more instances of
CoordinateReferenceSystem
.
For spatial coordinates, a number of constraints exist for the construction of Compound CRSs. For example, the coordinate reference systems that are combined should not contain any duplicate or redundant axes. Valid combinations include:
- Geographic 2D + Vertical
- Geographic 2D + Engineering 1D (near vertical)
- Projected + Vertical
- Projected + Engineering 1D (near vertical)
- Engineering (horizontal 2D or 1D linear) + Vertical
- Engineering (1D linear) + Vertical
TemporalCRS
added. More than one temporal CRS may be added if these axes represent
different time quantities. For example, the oil industry sometimes uses "4D seismic", by which is meant
seismic data with the vertical axis expressed in milliseconds (signal travel time). A second time axis
indicates how it changes with time (years), e.g. as a reservoir is gradually exhausted of its recoverable
oil or gas.-
Field Summary
Fields inherited from interface IdentifiedObject
ALIAS_KEY, IDENTIFIERS_KEY, NAME_KEY, REMARKS_KEY
Fields inherited from interface ReferenceSystem
DOMAIN_OF_VALIDITY_KEY, SCOPE_KEY
-
Method Summary
Modifier and TypeMethodDescriptionThe ordered list of coordinate reference systems.Methods inherited from interface CoordinateReferenceSystem
getCoordinateSystem
Methods inherited from interface IdentifiedObject
getAlias, getIdentifiers, getName, getRemarks, toWKT
Methods inherited from interface ReferenceSystem
getDomainOfValidity, getScope
-
Method Details
-
getComponents
@UML(identifier="componentReferenceSystem", obligation=MANDATORY, specification=ISO_19111) List<CoordinateReferenceSystem> getComponents()The ordered list of coordinate reference systems.- Returns:
- the ordered list of coordinate reference systems.
- Departure from OGC/ISO abstract specification:
Generalization by relaxation of ISO/OGC restriction
ISO 19111 said "nesting of compound CRSs shall not be permitted; the individual single systems shall be aggregated together". However, this approach causes data lost: it is difficult to add a temporal CRS to an existing three-dimensional compound CRS without loosing the name and identifiers of the 3D CRS, unless nesting is permitted. It is programmatically easier to convert nested CRSs to a flat list of single CRSs when needed than to reconstruct the 3D CRS from the single components. Consequently, GeoAPI has been keep conformant with the legacy OGC 01-009 specification in this aspect, which were allowing nested compound CRS.
-