Class DefaultEngineeringCRS

All Implemented Interfaces:
Serializable, CoordinateReferenceSystem, EngineeringCRS, SingleCRS, IdentifiedObject, ReferenceSystem

public class DefaultEngineeringCRS extends AbstractSingleCRS implements EngineeringCRS
A contextually local coordinate reference system. It can be divided into two broad categories:
  • earth-fixed systems applied to engineering activities on or near the surface of the earth;
  • CRSs on moving platforms such as road vehicles, vessels, aircraft, or spacecraft.
Used with CS type(s)
Cartesian, Affine, Ellipsoidal, Spherical, Cylindrical, Polar, Vertical, Linear
Since:
2.1
Author:
Martin Desruisseaux (IRD)
See Also:
  • Field Details

    • wildcard

      protected boolean wildcard
      Marks the CRS as a wildcard one. Wildcard CRS will transform to any other CRS with the identity transform
    • CARTESIAN_2D

      public static final DefaultEngineeringCRS CARTESIAN_2D
      A two-dimensional cartesian coordinate reference system with x, y axis in metres. By default, this CRS has no transformation path to any other CRS (i.e. a map using this CS can't be reprojected to a geographic coordinate reference system for example).
    • CARTESIAN_3D

      public static final DefaultEngineeringCRS CARTESIAN_3D
      A three-dimensional cartesian coordinate reference system with x, y, z axis in metres. By default, this CRS has no transformation path to any other CRS (i.e. a map using this CS can't be reprojected to a geographic coordinate reference system for example).
    • GENERIC_2D

      public static final DefaultEngineeringCRS GENERIC_2D
      A two-dimensional wildcard coordinate system with x, y axis in metres. At the difference of CARTESIAN_2D, this coordinate system is treated specially by the default coordinate operation factory with loose transformation rules: if no transformation path were found (for example through a derived CRS), then the transformation from this CRS to any CRS with a compatible number of dimensions is assumed to be the identity transform. This CRS is usefull as a kind of wildcard when no CRS were explicitly specified.
    • GENERIC_3D

      public static final DefaultEngineeringCRS GENERIC_3D
      A three-dimensional wildcard coordinate system with x, y, z axis in metres. At the difference of CARTESIAN_3D, this coordinate system is treated specially by the default coordinate operation factory with loose transformation rules: if no transformation path were found (for example through a derived CRS), then the transformation from this CRS to any CRS with a compatible number of dimensions is assumed to be the identity transform. This CRS is usefull as a kind of wildcard when no CRS were explicitly specified.
  • Constructor Details

    • DefaultEngineeringCRS

      public DefaultEngineeringCRS(EngineeringCRS crs)
      Constructs a new enginnering CRS with the same values than the specified one. This copy constructor provides a way to wrap an arbitrary implementation into a Geotools 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 CRS to copy.
      Since:
      2.2
    • DefaultEngineeringCRS

      public DefaultEngineeringCRS(String name, EngineeringDatum datum, CoordinateSystem cs)
      Constructs an engineering CRS from a name.
      Parameters:
      name - The name.
      datum - The datum.
      cs - The coordinate system.
    • DefaultEngineeringCRS

      public DefaultEngineeringCRS(Map<String,?> properties, EngineeringDatum datum, CoordinateSystem cs)
      Constructs an engineering CRS from a set of properties. The properties are given unchanged to the super-class constructor.
      Parameters:
      properties - Set of properties. Should contains at least "name".
      datum - The datum.
      cs - The coordinate system.
    • DefaultEngineeringCRS

      public DefaultEngineeringCRS(Map<String,?> properties, EngineeringDatum datum, CoordinateSystem cs, boolean wildcard)
      Constructs an engineering CRS from a set of properties. The properties are given unchanged to the super-class constructor.
      Parameters:
      properties - Set of properties. Should contains at least "name".
      datum - The datum.
      cs - The coordinate system.
      wildcard - When true the CRS will transform to any other CRS with the identity transform
  • Method Details

    • getDatum

      public EngineeringDatum getDatum()
      Returns the datum.
      Specified by:
      getDatum in interface EngineeringCRS
      Specified by:
      getDatum in interface SingleCRS
      Overrides:
      getDatum in class AbstractSingleCRS
      Returns:
      The datum.
    • calculateHashCode

      public int calculateHashCode()
      Returns a hash value for this derived CRS.
      Overrides:
      calculateHashCode in class AbstractSingleCRS
      Returns:
      The hash code value. This value doesn't need to be the same in past or future versions of this class.
    • formatWKT

      protected String formatWKT(Formatter formatter)
      Format the inner part of a Well Known Text (WKT) element.
      Overrides:
      formatWKT in class AbstractCRS
      Parameters:
      formatter - The formatter to use.
      Returns:
      The name of the WKT element type, which is "LOCAL_CS".
      See Also:
    • equals

      public boolean equals(AbstractIdentifiedObject object, boolean compareMetadata)
      Compares the specified object to this CRS for equality. This method is overridden because, otherwise, CARTESIAN_xD and GENERIC_xD would be considered equals when metadata are ignored.
      Overrides:
      equals in class AbstractSingleCRS
      Parameters:
      object - The object to compare to this.
      compareMetadata - true for performing a strict comparaison, or false for comparing only properties relevant to transformations.
      Returns:
      true if both objects are equal.
    • isWildcard

      public boolean isWildcard()
      Returns true if this is a wildcard CRS, that is, one that will transform from and to any other CRS using the identity transformation