Package org.apache.sis.referencing.cs

# Class DefaultParametricCS

Object
FormattableObject
AbstractIdentifiedObject
AbstractCS
DefaultParametricCS

All Implemented Interfaces:
  `Serializable`, `Formattable`, `Deprecable`, `LenientComparable`, `CoordinateSystem`, `IdentifiedObject`

public class DefaultParametricCS extends AbstractCS
A 1-dimensional coordinate system for parametric values or functions.

Permitted associations
Used with CRS | Permitted axis names
--- | ---
Parametric | unspecified

## Immutability and thread safety

This class is immutable and thus thread-safe if the property values (not necessarily the map itself) and the `CoordinateSystemAxis` instances given to the constructor are also immutable. Unless otherwise noted in the javadoc, this condition holds if all components were created using only SIS factories and static constants.

Since:
  0.7
See Also:
  - `DefaultParametricCRS`
  - `DefaultParametricDatum`
  - `GeodeticAuthorityFactory​.createParametricCS(String)`
  - Serialized Form

Defined in the `sis-referencing` module

- ## Field Summary

  ### Fields inherited from class AbstractIdentifiedObject

  `DEPRECATED_KEY, LOCALE_KEY`

  ### Fields inherited from interface IdentifiedObject

  `ALIAS_KEY, IDENTIFIERS_KEY, NAME_KEY, REMARKS_KEY`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  ``
  `DefaultParametricCS(Map<String,?> properties, CoordinateSystemAxis axis)`
  Constructs a coordinate system from a set of properties.
  `protected`
  `DefaultParametricCS(DefaultParametricCS cs)`
  Creates a new coordinate system with the same values than the specified one.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `DefaultParametricCS`
  `forConvention(AxesConvention convention)`
  Returns a coordinate system equivalent to this one but with axes rearranged according the given convention.

  ### Methods inherited from class AbstractCS

  `castOrCopy, computeHashCode, equals, formatTo, getAxis, getDimension, getInterface`

  ### Methods inherited from class AbstractIdentifiedObject

  `castOrCopy, equals, formatTo, getAlias, getDescription, getIdentifiers, getName, getRemarks, hashCode, isDeprecated, isHeuristicMatchForName`

  ### Methods inherited from class FormattableObject

  `print, toString, toString, toWKT`

  ### Methods inherited from class Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface IdentifiedObject

  `getAlias, getIdentifiers, getName, getRemarks, toWKT`

- ## Constructor Details

  - ### DefaultParametricCS

    public DefaultParametricCS(Map<String,?> properties, CoordinateSystemAxis axis)
    Constructs a coordinate system from a set of properties. The properties map is given unchanged to the super-class constructor. The following table is a reminder of main (not all) properties:

    Recognized properties (non exhaustive list)
    Property name | Value type | Returned by
    --- | --- | ---
    "name" | `Identifier` or `String` | `AbstractIdentifiedObject.getName()`
    "alias" | `GenericName` or `CharSequence` (optionally as array) | `AbstractIdentifiedObject.getAlias()`
    "identifiers" | `Identifier` (optionally as array) | `AbstractIdentifiedObject.getIdentifiers()`
    "remarks" | `InternationalString` or `String` | `AbstractIdentifiedObject.getRemarks()`

    Parameters:
      `properties` - the properties to be given to the identified object.
      `axis` - the axis.
    See Also:
      - `GeodeticObjectFactory​.createParametricCS(Map, CoordinateSystemAxis)`

  - ### DefaultParametricCS

    protected DefaultParametricCS(DefaultParametricCS cs)
    Creates a new coordinate system with the same values than the specified one. This copy constructor provides a way to convert an arbitrary implementation into a SIS 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.

    Warning: in a future SIS version, the parameter type may be changed to `org​.opengis​.referencing​.cs​.ParametricCS`. This change is pending GeoAPI revision.
    Parameters:
      `cs` - the coordinate system to copy.

- ## Method Details

  - ### forConvention

    public DefaultParametricCS forConvention(AxesConvention convention)
    Returns a coordinate system equivalent to this one but with axes rearranged according the given convention. If this coordinate system is already compatible with the given convention, then this method returns `this`.
    Overrides:
      `forConvention` in class `AbstractCS`
    Parameters:
      `convention` - the axes convention for which a coordinate system is desired.
    Returns:
      a coordinate system compatible with the given convention (may be `this`).
    See Also:
      - `AbstractCRS​.forConvention(AxesConvention)`