org.geotoolkit.referencing.crs
Class DefaultProjectedCRS

Object
  extended by FormattableObject
      extended by AbstractIdentifiedObject
          extended by AbstractReferenceSystem
              extended by AbstractCRS
                  extended by AbstractSingleCRS
                      extended by AbstractDerivedCRS
                          extended by DefaultProjectedCRS
All Implemented Interfaces:
Serializable, Formattable, LenientComparable, CoordinateReferenceSystem, GeneralDerivedCRS, ProjectedCRS, SingleCRS, IdentifiedObject, ReferenceSystem

@Immutable
public class DefaultProjectedCRS
extends AbstractDerivedCRS
implements ProjectedCRS

A 2D coordinate reference system used to approximate the shape of the earth on a planar surface. It is done in such a way that the distortion that is inherent to the approximation is carefully controlled and known. Distortion correction is commonly applied to calculated bearings and distances to produce values that are a close match to actual field values.

Used with CS type(s)
Cartesian

Since:
1.2
Version:
3.19
Author:
Martin Desruisseaux (IRD, Geomatys)
See Also:
Serialized Form
Module:
referencing/geotk-referencing (download)    View source code for this class

Field Summary
 
Fields inherited from class AbstractDerivedCRS
baseCRS, CONVERSION_TYPE_KEY, conversionFromBase
 
Fields inherited from class FormattableObject
EPSG, GEOTIFF, INTERNAL, OGC, SINGLE_LINE
 
Fields inherited from interface ReferenceSystem
DOMAIN_OF_VALIDITY_KEY, SCOPE_KEY
 
Fields inherited from interface IdentifiedObject
ALIAS_KEY, IDENTIFIERS_KEY, NAME_KEY, REMARKS_KEY
 
Constructor Summary
DefaultProjectedCRS(Map<String,?> properties, Conversion conversionFromBase, GeographicCRS base, MathTransform baseToDerived, CartesianCS derivedCS)
          Constructs a projected CRS from a defining conversion.
DefaultProjectedCRS(Map<String,?> properties, GeographicCRS base, MathTransform baseToDerived, CartesianCS derivedCS)
          Constructs a projected CRS from a set of properties.
DefaultProjectedCRS(ProjectedCRS crs)
          Constructs a new projected CRS with the same values than the specified one.
DefaultProjectedCRS(String name, GeographicCRS base, MathTransform baseToDerived, CartesianCS derivedCS)
          Constructs a projected CRS from a name.
 
Method Summary
static DefaultProjectedCRS castOrCopy(ProjectedCRS object)
          Returns a Geotk CRS implementation with the same values than the given arbitrary implementation.
 String formatWKT(Formatter formatter)
          Formats the inner part of a Well Known Text (WKT) element.
 GeographicCRS getBaseCRS()
          Returns the base coordinate reference system, which must be geographic.
 Projection getConversionFromBase()
          Returns the map projection from the base CRS to this CRS.
 CartesianCS getCoordinateSystem()
          Returns the coordinate system.
 GeodeticDatum getDatum()
          Returns the datum.
static DefaultProjectedCRS wrap(ProjectedCRS object)
          Deprecated. Renamed castOrCopy.
 
Methods inherited from class AbstractDerivedCRS
computeHashCode, equals
 
Methods inherited from class AbstractSingleCRS
getAxis, getDimension
 
Methods inherited from class AbstractCRS
distance
 
Methods inherited from class AbstractReferenceSystem
getDomainOfValidity, getScope
 
Methods inherited from class AbstractIdentifiedObject
equals, getAlias, getIdentifier, getIdentifiers, getName, getName, getRemarks, hashCode, nameMatches
 
Methods inherited from class FormattableObject
getDefaultIndentation, print, setDefaultIndentation, toString, toWKT, toWKT, toWKT
 
Methods inherited from class Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface ReferenceSystem
getDomainOfValidity, getScope
 
Methods inherited from interface IdentifiedObject
getAlias, getIdentifiers, getName, getRemarks, toWKT
 

Constructor Detail

DefaultProjectedCRS

public DefaultProjectedCRS(ProjectedCRS crs)
Constructs a new projected CRS with the same values than the specified one. This copy constructor provides a way to convert an arbitrary implementation into a Geotk one or a user-defined one (as a subclass), usually in order to leverage some implementation-specific API. This constructor performs a shallow copy, i.e. the properties are not cloned.

Parameters:
crs - The coordinate reference system to copy.
Since:
2.2

DefaultProjectedCRS

public DefaultProjectedCRS(String name,
                           GeographicCRS base,
                           MathTransform baseToDerived,
                           CartesianCS derivedCS)
                    throws MismatchedDimensionException
Constructs a projected CRS from a name. A default operation method is inferred from the math transform. This is a convenience constructor that is not guaranteed to work reliably for non-Geotk implementations. Use the constructor expecting a defining conversion for more determinist result.

Parameters:
name - The name.
base - Coordinate reference system to base the derived CRS on.
baseToDerived - The transform from the base CRS to returned CRS.
derivedCS - The coordinate system for the derived CRS. The number of axes must match the target dimension of the transform baseToDerived.
Throws:
MismatchedDimensionException - if the source and target dimension of baseToDeviced don't match the dimension of base and derivedCS respectively.
Since:
2.5

DefaultProjectedCRS

public DefaultProjectedCRS(Map<String,?> properties,
                           GeographicCRS base,
                           MathTransform baseToDerived,
                           CartesianCS derivedCS)
                    throws MismatchedDimensionException
Constructs a projected CRS from a set of properties. A default operation method is inferred from the math transform. This is a convenience constructor that is not guaranteed to work reliably for non-Geotk implementations. Use the constructor expecting a defining conversion for more determinist result.

The properties are given unchanged to the super-class constructor.

Parameters:
properties - Name and other properties to give to the new derived CRS object and to the underlying projection.
base - Coordinate reference system to base the derived CRS on.
baseToDerived - The transform from the base CRS to returned CRS.
derivedCS - The coordinate system for the derived CRS. The number of axes must match the target dimension of the transform baseToDerived.
Throws:
MismatchedDimensionException - if the source and target dimension of baseToDeviced don't match the dimension of base and derivedCS respectively.
Since:
2.5

DefaultProjectedCRS

public DefaultProjectedCRS(Map<String,?> properties,
                           Conversion conversionFromBase,
                           GeographicCRS base,
                           MathTransform baseToDerived,
                           CartesianCS derivedCS)
                    throws MismatchedDimensionException
Constructs a projected CRS from a defining conversion. The properties are given unchanged to the super-class constructor.

Parameters:
properties - Name and other properties to give to the new projected CRS object.
conversionFromBase - The defining conversion.
base - Coordinate reference system to base the projected CRS on.
baseToDerived - The transform from the base CRS to returned CRS.
derivedCS - The coordinate system for the projected CRS. The number of axes must match the target dimension of the transform baseToDerived.
Throws:
MismatchedDimensionException - if the source and target dimension of baseToDerived don't match the dimension of base and derivedCS respectively.
Method Detail

castOrCopy

public static DefaultProjectedCRS castOrCopy(ProjectedCRS object)
Returns a Geotk CRS implementation with the same values than the given arbitrary implementation. If the given object is null, then this method returns null. Otherwise if the given object is already a Geotk implementation, then the given object is returned unchanged. Otherwise a new Geotk implementation is created and initialized to the attribute values of the given object.

Parameters:
object - The object to get as a Geotk implementation, or null if none.
Returns:
A Geotk implementation containing the values of the given object (may be the given object itself), or null if the argument was null.
Since:
3.18

wrap

@Deprecated
public static DefaultProjectedCRS wrap(ProjectedCRS object)
Deprecated. Renamed castOrCopy.

Parameters:
object - The object to get as a Geotk implementation, or null if none.
Returns:
The given object as a Geotk implementation.

getCoordinateSystem

public CartesianCS getCoordinateSystem()
Returns the coordinate system.

Specified by:
getCoordinateSystem in interface CoordinateReferenceSystem
Specified by:
getCoordinateSystem in interface ProjectedCRS
Specified by:
getCoordinateSystem in interface SingleCRS
Overrides:
getCoordinateSystem in class AbstractCRS

getDatum

public GeodeticDatum getDatum()
Returns the datum.

Specified by:
getDatum in interface ProjectedCRS
Specified by:
getDatum in interface SingleCRS
Overrides:
getDatum in class AbstractSingleCRS
Returns:
The datum.

getBaseCRS

public GeographicCRS getBaseCRS()
Returns the base coordinate reference system, which must be geographic.

Specified by:
getBaseCRS in interface GeneralDerivedCRS
Specified by:
getBaseCRS in interface ProjectedCRS
Overrides:
getBaseCRS in class AbstractDerivedCRS
Returns:
The base CRS.

getConversionFromBase

public Projection getConversionFromBase()
Returns the map projection from the base CRS to this CRS.

Specified by:
getConversionFromBase in interface GeneralDerivedCRS
Specified by:
getConversionFromBase in interface ProjectedCRS
Overrides:
getConversionFromBase in class AbstractDerivedCRS
Returns:
The map projection from base CRS to this CRS.

formatWKT

public String formatWKT(Formatter formatter)
Formats the inner part of a Well Known Text (WKT) element.

Specified by:
formatWKT in interface Formattable
Overrides:
formatWKT in class AbstractDerivedCRS
Parameters:
formatter - The formatter to use.
Returns:
The name of the WKT element type, which is "PROJCS".
See Also:
FormattableObject.toWKT(), FormattableObject.toString()


Copyright © 2009-2011 Geotoolkit.org. All Rights Reserved.