|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ObjectAbstractFactory
ReferencingFactory
AbstractCoordinateOperationFactory
DefaultCoordinateOperationFactory
public class DefaultCoordinateOperationFactory
Creates coordinate operations. This factory is capable to find
coordinate transformations or conversions
between two coordinate reference systems. It delegates
most of its work to one or many of createOperationStep
methods. Subclasses can
override those methods in order to extend the factory capability to some more CRS.
modules/library/referencing (gt-referencing.jar)
Field Summary |
---|
Fields inherited from class AbstractCoordinateOperationFactory |
---|
AXIS_CHANGES, DATUM_SHIFT, ELLIPSOID_SHIFT, GEOCENTRIC_CONVERSION, IDENTITY, INVERSE_OPERATION |
Fields inherited from class ReferencingFactory |
---|
LOGGER |
Fields inherited from class AbstractFactory |
---|
hints, MAXIMUM_PRIORITY, MINIMUM_PRIORITY, NORMAL_PRIORITY, priority |
Constructor Summary | |
---|---|
DefaultCoordinateOperationFactory()
Constructs a coordinate operation factory using the default factories. |
|
DefaultCoordinateOperationFactory(Hints userHints)
Constructs a coordinate operation factory using the specified hints. |
|
DefaultCoordinateOperationFactory(Hints userHints,
int priority)
Constructs a coordinate operation factory using the specified hints and priority. |
Method Summary | |
---|---|
protected CoordinateOperation |
createFromDatabase(CoordinateReferenceSystem sourceCRS,
CoordinateReferenceSystem targetCRS)
If the coordinate operation is explicitly defined in some database (typically EPSG), returns it. |
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)
Deprecated. Current implementation ignore the method argument. |
protected CoordinateOperation |
createOperationStep(CompoundCRS sourceCRS,
CompoundCRS targetCRS)
Creates an operation between two compound coordinate reference systems. |
protected CoordinateOperation |
createOperationStep(CompoundCRS sourceCRS,
SingleCRS targetCRS)
Creates an operation from a compound to a single coordinate reference systems. |
protected CoordinateOperation |
createOperationStep(GeocentricCRS sourceCRS,
GeocentricCRS targetCRS)
Creates an operation between two geocentric coordinate reference systems. |
protected CoordinateOperation |
createOperationStep(GeocentricCRS sourceCRS,
GeographicCRS targetCRS)
Creates an operation from a geocentric to a geographic coordinate reference systems. |
protected CoordinateOperation |
createOperationStep(GeographicCRS sourceCRS,
GeocentricCRS targetCRS)
Creates an operation from a geographic to a geocentric coordinate reference systems. |
protected CoordinateOperation |
createOperationStep(GeographicCRS sourceCRS,
GeographicCRS targetCRS)
Creates an operation between two geographic coordinate reference systems. |
protected CoordinateOperation |
createOperationStep(GeographicCRS sourceCRS,
ProjectedCRS targetCRS)
Creates an operation from a geographic to a projected coordinate reference system. |
protected CoordinateOperation |
createOperationStep(GeographicCRS sourceCRS,
VerticalCRS targetCRS)
Creates an operation between a geographic and a vertical coordinate reference systems. |
protected CoordinateOperation |
createOperationStep(ProjectedCRS sourceCRS,
GeographicCRS targetCRS)
Creates an operation from a projected to a geographic coordinate reference system. |
protected CoordinateOperation |
createOperationStep(ProjectedCRS sourceCRS,
ProjectedCRS targetCRS)
Creates an operation between two projected coordinate reference systems. |
protected CoordinateOperation |
createOperationStep(SingleCRS sourceCRS,
CompoundCRS targetCRS)
Creates an operation from a single to a compound coordinate reference system. |
protected CoordinateOperation |
createOperationStep(TemporalCRS sourceCRS,
TemporalCRS targetCRS)
Creates an operation between two temporal coordinate reference systems. |
protected CoordinateOperation |
createOperationStep(VerticalCRS sourceCRS,
VerticalCRS targetCRS)
Creates an operation between two vertical coordinate reference systems. |
Methods inherited from class ReferencingFactory |
---|
getVendor |
Methods inherited from class AbstractFactory |
---|
addImplementationHints, equals, getPriority, hashCode, onDeregistration, onRegistration, toString |
Methods inherited from class Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface Factory |
---|
getVendor |
Constructor Detail |
---|
public DefaultCoordinateOperationFactory()
public DefaultCoordinateOperationFactory(Hints userHints)
CRS
, CS
,
DATUM
and MATH_TRANSFORM
FACTORY
hints.
userHints
- The hints, or null
if none.public DefaultCoordinateOperationFactory(Hints userHints, int priority)
CRS
, CS
,
DATUM
and MATH_TRANSFORM
FACTORY
hints.
userHints
- The hints, or null
if none.priority
- The priority for this factory, as a number between
MINIMUM_PRIORITY
and
MAXIMUM_PRIORITY
inclusive.Method Detail |
---|
public CoordinateOperation createOperation(CoordinateReferenceSystem sourceCRS, CoordinateReferenceSystem targetCRS) throws OperationNotFoundException, FactoryException
The default implementation inspects the CRS and delegates the work to one or
many createOperationStep(...)
methods. This method fails if no path
between the CRS is found.
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.public CoordinateOperation createOperation(CoordinateReferenceSystem sourceCRS, CoordinateReferenceSystem targetCRS, OperationMethod method) throws OperationNotFoundException, FactoryException
method
argument.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.method
- the algorithmic method for conversion or transformation
OperationNotFoundException
- if no operation path was found from sourceCRS
to targetCRS
.
FactoryException
- if the operation creation failed for some other reason.protected CoordinateOperation createOperationStep(TemporalCRS sourceCRS, TemporalCRS targetCRS) throws FactoryException
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(VerticalCRS sourceCRS, VerticalCRS targetCRS) throws FactoryException
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(GeographicCRS sourceCRS, VerticalCRS targetCRS) throws FactoryException
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(GeographicCRS sourceCRS, GeographicCRS targetCRS) throws FactoryException
(NORTH,WEST)
to (EAST,NORTH)
), performs units conversion
and apply datum shifts if needed.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(ProjectedCRS sourceCRS, ProjectedCRS targetCRS) throws FactoryException
sourceCRS
to its base
geographic CRS.targetCRS
.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(GeographicCRS sourceCRS, ProjectedCRS targetCRS) throws FactoryException
where the conversion fromsourceCRS → baseCRS → targetCRS
baseCRS
to targetCRS
is obtained
from targetCRS.getConversionFromBase()
.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(ProjectedCRS sourceCRS, GeographicCRS targetCRS) throws FactoryException
where the conversion fromsourceCRS → baseCRS → targetCRS
sourceCRS
to baseCRS
is obtained
from the inverse of
sourceCRS.getConversionFromBase()
.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(GeocentricCRS sourceCRS, GeocentricCRS targetCRS) throws FactoryException
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(GeographicCRS sourceCRS, GeocentricCRS targetCRS) throws FactoryException
"Ellipsoid_To_Geocentric"
math transform.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(GeocentricCRS sourceCRS, GeographicCRS targetCRS) throws FactoryException
"Geocentric_To_Ellipsoid"
math transform.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(CompoundCRS sourceCRS, SingleCRS targetCRS) throws FactoryException
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(SingleCRS sourceCRS, CompoundCRS targetCRS) throws FactoryException
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createOperationStep(CompoundCRS sourceCRS, CompoundCRS targetCRS) throws FactoryException
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
.
FactoryException
- If the operation can't be constructed.protected CoordinateOperation createFromDatabase(CoordinateReferenceSystem sourceCRS, CoordinateReferenceSystem targetCRS)
sourceCRS
to targetCRS
, or if this method
failed to create an operation from the database), returns null
.
The default implementation always returns null
, since there is no database
connected to a DefaultCoordinateOperationFactory
instance. In other words,
the default implementation is "standalone": it tries to figure out transformation
paths by itself. Subclasses should override this method if they can fetch a more
accurate operation from some database. The mean subclass doing so is
AuthorityBackedFactory
.
This method is invoked by createOperation(sourceCRS,
targetCRS)
before to try to figure out a transformation path by itself. It is also
invoked by various createOperationStep(...)
methods when an intermediate CRS was
obtained by GeneralDerivedCRS.getBaseCRS()
(this case occurs especially during
geographic from/to projected CRS
operations). This method is not invoked for synthetic CRS generated by
createOperationStep(...)
, since those temporary CRS are not expected to exist
in a database.
sourceCRS
- Input coordinate reference system.targetCRS
- Output coordinate reference system.
sourceCRS
to targetCRS
if and only if
one is explicitly defined in some underlying database, or null
otherwise.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |