- All Superinterfaces:
IdentifiedObject
- All Known Subinterfaces:
ConcatenatedOperation
,ConicProjection
,Conversion
,CylindricalProjection
,PassThroughOperation
,PlanarProjection
,Projection
,SingleOperation
,Transformation
@UML(identifier="CC_CoordinateOperation",
specification=ISO_19111)
public interface CoordinateOperation
extends IdentifiedObject
A mathematical operation on coordinates that transforms or converts coordinates to
another coordinate reference system. Many but not all coordinate operations (from
coordinate reference system A to
coordinate reference system B)
also uniquely define the inverse operation (from
coordinate reference system B to
coordinate reference system A).
In some cases, the operation method algorithm for the inverse operation is the same
as for the forward algorithm, but the signs of some operation parameter values must
be reversed. In other cases, different algorithms are required for the forward and
inverse operations, but the same operation parameter values are used. If (some)
entirely different parameter values are needed, a different coordinate operation
shall be defined.
- Since:
- 1.0
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Key for the"coordinateOperationAccuracy"
property.static final String
Key for the"domainOfValidity"
property.static final String
Key for the"operationVersion"
property.static final String
Key for the"scope"
property.Fields inherited from interface IdentifiedObject
ALIAS_KEY, IDENTIFIERS_KEY, NAME_KEY, REMARKS_KEY
-
Method Summary
Modifier and TypeMethodDescriptionEstimate(s) of the impact of this operation on point accuracy.Area or region or timeframe in which this coordinate operation is valid.Gets the math transform.Version of the coordinate transformation (i.e., instantiation due to the stochastic nature of the parameters).getScope()
Description of domain of usage, or limitations of usage, for which this operation is valid.Returns the source CRS.Returns the target CRS.Methods inherited from interface IdentifiedObject
getAlias, getIdentifiers, getName, getRemarks, toWKT
-
Field Details
-
OPERATION_VERSION_KEY
Key for the"operationVersion"
property. This is used for setting the value to be returned bygetOperationVersion()
.- See Also:
-
COORDINATE_OPERATION_ACCURACY_KEY
Key for the"coordinateOperationAccuracy"
property. This is used for setting the value to be returned bygetCoordinateOperationAccuracy()
.- Since:
- 2.1
- See Also:
-
DOMAIN_OF_VALIDITY_KEY
Key for the"domainOfValidity"
property. This is used for setting the value to be returned bygetDomainOfValidity()
.- Since:
- 2.1
- See Also:
-
SCOPE_KEY
Key for the"scope"
property. This is used for setting the value to be returned bygetScope()
.- See Also:
-
-
Method Details
-
getSourceCRS
@UML(identifier="sourceCRS", obligation=CONDITIONAL, specification=ISO_19111) CoordinateReferenceSystem getSourceCRS()Returns the source CRS. The source CRS is mandatory for transformations only. Conversions may have a source CRS that is not specified here, but throughGeneralDerivedCRS.getBaseCRS()
instead.- Returns:
- The source CRS, or
null
if not available. - See Also:
-
getTargetCRS
@UML(identifier="targetCRS", obligation=CONDITIONAL, specification=ISO_19111) CoordinateReferenceSystem getTargetCRS()Returns the target CRS. The target CRS is mandatory for transformations only. Conversions may have a target CRS that is not specified here, but throughGeneralDerivedCRS
instead.- Returns:
- The target CRS, or
null
if not available. - See Also:
-
getOperationVersion
@UML(identifier="operationVersion", obligation=CONDITIONAL, specification=ISO_19111) String getOperationVersion()Version of the coordinate transformation (i.e., instantiation due to the stochastic nature of the parameters). Mandatory when describing a transformation, and should not be supplied for a conversion.- Returns:
- The coordinate operation version, or
null
in none.
-
getCoordinateOperationAccuracy
@UML(identifier="coordinateOperationAccuracy", obligation=OPTIONAL, specification=ISO_19111) Collection<PositionalAccuracy> getCoordinateOperationAccuracy()Estimate(s) of the impact of this operation on point accuracy. Gives position error estimates for target coordinates of this coordinate operation, assuming no errors in source coordinates.- Returns:
- The position error estimates, or an empty collection if not available.
- Since:
- 2.1
-
getDomainOfValidity
@UML(identifier="domainOfValidity", obligation=OPTIONAL, specification=ISO_19111) Extent getDomainOfValidity()Area or region or timeframe in which this coordinate operation is valid.- Returns:
- The coordinate operation valid domain, or
null
if not available. - Since:
- 2.1
-
getScope
@UML(identifier="scope", obligation=OPTIONAL, specification=ISO_19111) InternationalString getScope()Description of domain of usage, or limitations of usage, for which this operation is valid.- Returns:
- A description of domain of usage, or
null
if none. - Departure from OGC/ISO abstract specification:
Departure for historical reason
This method has been kept conformant with the specification published in 2003. The revision published in 2007 replaced the singleton by a collection and changed the obligation from "optional" to "mandatory", requiring a return value of "not known" if the scope is unknown. This change is still under review.
-
getMathTransform
@UML(identifier="CT_CoordinateTransformation.getMathTransform", specification=OGC_01009) MathTransform getMathTransform()Gets the math transform. The math transform will transform positions in the source coordinate reference system into positions in the target coordinate reference system. It may benull
in the case of defining conversions.- Returns:
- The transform from source to target CRS, or
null
if not applicable.
-