@UML(identifier="CT_CoordinateTransformationFactory", specification=OGC_01009) public interface CoordinateOperationFactory extends ObjectFactory
Modifier and Type | Method and Description |
---|---|
CoordinateOperation |
createConcatenatedOperation(Map<String,?> properties,
CoordinateOperation... operations)
Creates a concatenated operation from a sequence of operations.
|
Conversion |
createDefiningConversion(Map<String,?> properties,
OperationMethod method,
ParameterValueGroup parameters)
Constructs a defining conversion from a set of properties.
|
CoordinateOperation |
createOperation(CoordinateReferenceSystem sourceCRS,
CoordinateReferenceSystem targetCRS)
Returns an operation for conversion or transformation between two coordinate reference systems.
|
CoordinateOperation |
createOperation(CoordinateReferenceSystem sourceCRS,
CoordinateReferenceSystem targetCRS,
OperationMethod method)
Returns an operation using a particular method for conversion or transformation
between two coordinate reference systems.
|
@UML(identifier="createFromCoordinateSystems", specification=OGC_01009) CoordinateOperation createOperation(CoordinateReferenceSystem sourceCRS, CoordinateReferenceSystem targetCRS) throws OperationNotFoundException, FactoryException
Implementations may try to
query an authority factory first, and compute the operation next if no operation from
source
to target
code was explicitly defined by the authority.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.sourceCRS
to targetCRS
.OperationNotFoundException
- if no operation path was found from sourceCRS
to targetCRS
.FactoryException
- if the operation creation failed for some other reason.CoordinateOperation createOperation(CoordinateReferenceSystem sourceCRS, CoordinateReferenceSystem targetCRS, OperationMethod method) throws OperationNotFoundException, FactoryException
Example: A transformation between two geographic CRS using
different datum
requires a datum shift. Many methods exist for this purpose, including interpolations
in a grid, a scale/rotation/translation in geocentric coordinates or the Molodenski approximation.
When invoking createOperation
without operation method, this factory may select by
default the most accurate transformation (typically interpolation in a grid). When invoking
createOperation
with an operation method, user can force usage of Molodenski
approximation for instance.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.method
- The algorithmic method for conversion or transformation.sourceCRS
to targetCRS
.OperationNotFoundException
- if no operation path was found from sourceCRS
to targetCRS
.FactoryException
- if the operation creation failed for some other reason.Departure from OGC/ISO specification:
This method has been added at user request, in order to specify the desired transformation path when many are available.
CoordinateOperation createConcatenatedOperation(Map<String,?> properties, CoordinateOperation... operations) throws FactoryException
properties
- Name and other properties to give to the new object.
Available properties are listed there.operations
- The sequence of operations.FactoryException
- if the object creation failed.Departure from OGC/ISO specification:
This method has been added because OGC 01-009 does not define a factory method for creating such object.
Conversion createDefiningConversion(Map<String,?> properties, OperationMethod method, ParameterValueGroup parameters) throws FactoryException
Some available properties are listed there. Additionally, the following properties are understood by this constructor:
properties
- Set of properties. Should contains at least "name"
.method
- The operation method.parameters
- The parameter values.FactoryException
- if the object creation failed.CRSFactory.createProjectedCRS(Map, GeographicCRS, Conversion, CartesianCS)
,
CRSFactory.createDerivedCRS(Map, CoordinateReferenceSystem, Conversion, CoordinateSystem)
Copyright © 1994–2019 Open Geospatial Consortium. All rights reserved.