Package org.apache.sis.referencing.cs

## Class DefaultParametricCS

- Object
- - FormattableObject
  - - AbstractIdentifiedObject
    - - AbstractCS
      - - DefaultParametricCS

- All Implemented Interfaces:
    `Serializable`, `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

    All Methods Instance Methods Concrete Methods
    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, 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 Detail

    - #### 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 Detail

    - #### 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)`