Package org.apache.sis.referencing.operation.projection

## Enum NormalizedProjection.ParameterRole

- Object
- - Enum<NormalizedProjection.ParameterRole>
  - - ParameterRole

- All Implemented Interfaces:
    `Serializable`, `Comparable<NormalizedProjection​.ParameterRole>`
  Enclosing class:
    NormalizedProjection

      protected static enum NormalizedProjection.ParameterRole
      extends Enum<NormalizedProjection.ParameterRole>

  Maps the parameters to be used for initializing `NormalizedProjection` and its normalization / denormalization matrices. This is an enumeration of parameters found in almost every map projections, but under different names. This enumeration allows `NormalizedProjection` subclasses to specify which parameter names, ranges and default values should be used by the projection constructor.

  `NormalizedProjection` subclasses will typically provide values only for the following keys: `CENTRAL_MERIDIAN`, `SCALE_FACTOR`, `FALSE_EASTING` and `FALSE_NORTHING`.

  Since:
    0.6
  See Also:
    `NormalizedProjection(OperationMethod, Parameters, Map)`

  Defined in the `sis-referencing` module

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---
    `CENTRAL_MERIDIAN` | Maps the central meridian parameter (symbol: λ₀).
    `FALSE_EASTING` | Maps the false easting parameter (symbol: FE).
    `FALSE_NORTHING` | Maps the false northing parameter (symbol: FN).
    `FALSE_SOUTHING` | Maps the false southing parameter (symbol: FS).
    `FALSE_WESTING` | Maps the false westing parameter (symbol: FW).
    `LATITUDE_OF_CONFORMAL_SPHERE_RADIUS` | Maps the parameter for the latitude where to compute the radius of conformal sphere (symbol: Rc).
    `SCALE_FACTOR` | Maps the scale factor parameter (symbol: k₀).
    `SEMI_MAJOR` | Maps the semi-major axis length parameter (symbol: a).
    `SEMI_MINOR` | Maps the semi-minor axis length parameter (symbol: b).

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static NormalizedProjection.ParameterRole` | `valueOf​(String name)` | Returns the enum constant of this type with the specified name.
    `static NormalizedProjection.ParameterRole[]` | `values()` | Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### SEMI_MAJOR

          public static final NormalizedProjection.ParameterRole SEMI_MAJOR

      Maps the semi-major axis length parameter (symbol: a). This value is used for computing `NormalizedProjection​.eccentricity`, and is also a multiplication factor for the denormalization matrix.

      Unless specified otherwise, this is always mapped to a parameter named `"semi_major"`. `NormalizedProjection` subclasses typically do not need to provide a value for this key.

    - #### SEMI_MINOR

          public static final NormalizedProjection.ParameterRole SEMI_MINOR

      Maps the semi-minor axis length parameter (symbol: b). This value is used for computing `NormalizedProjection​.eccentricity`.

      Unless specified otherwise, this is always mapped to a parameter named `"semi_minor"`. `NormalizedProjection` subclasses typically do not need to provide a value for this key.

    - #### LATITUDE_OF_CONFORMAL_SPHERE_RADIUS

          public static final NormalizedProjection.ParameterRole LATITUDE_OF_CONFORMAL_SPHERE_RADIUS

      Maps the parameter for the latitude where to compute the radius of conformal sphere (symbol: Rc). If this parameter is provided, then the radius of the conformal sphere at latitude φ will be used instead than the semi-major axis length in the denormalisation matrix. In other words, if provided then a is replaced by Rc below:
      a ⋅ k 0 0 FE 0 a ⋅ k 0 FN 0 0 1

      This enumeration shall be used only when the user requested explicitly spherical formulas, for example the "Mercator (Spherical)" projection (EPSG:1026), but the figure of the Earth may be an ellipsoid rather than a sphere. In the majority of cases, this enumeration should not be used.

    - #### CENTRAL_MERIDIAN

          public static final NormalizedProjection.ParameterRole CENTRAL_MERIDIAN

      Maps the central meridian parameter (symbol: λ₀). This value is subtracted from the longitude values before the map projections.

      Some common names for this parameter are:

      - Longitude of origin
      - Longitude of false origin
      - Longitude of natural origin
      - Spherical longitude of origin
      - Longitude of projection centre

    - #### SCALE_FACTOR

          public static final NormalizedProjection.ParameterRole SCALE_FACTOR

      Maps the scale factor parameter (symbol: k₀). This is a multiplication factor for the (x,y) values obtained after map projections.

      Some common names for this parameter are:

      - Scale factor at natural origin
      - Scale factor on initial line
      - Scale factor on pseudo standard parallel

    - #### FALSE_EASTING

          public static final NormalizedProjection.ParameterRole FALSE_EASTING

      Maps the false easting parameter (symbol: FE). This is a translation term for the x values obtained after map projections.

      Some common names for this parameter are:

      - False easting
      - Easting at false origin
      - Easting at projection centre

    - #### FALSE_WESTING

          public static final NormalizedProjection.ParameterRole FALSE_WESTING

      Maps the false westing parameter (symbol: FW). This is the same x translation than `FALSE_EASTING`, but of opposite sign.

      Actually, there is usually no parameter named "false westing" in a map projection. But some projections like "Lambert Conic Conformal (West Orientated)" are defined in such a way that their "false easting" parameter is effectively a "false westing". This enumeration value can be used for informing `NormalizedProjection` about that fact.

    - #### FALSE_NORTHING

          public static final NormalizedProjection.ParameterRole FALSE_NORTHING

      Maps the false northing parameter (symbol: FN). This is a translation term for the y values obtained after map projections.

      Some common names for this parameter are:

      - False northing
      - Northing at false origin
      - Northing at projection centre

    - #### FALSE_SOUTHING

          public static final NormalizedProjection.ParameterRole FALSE_SOUTHING

      Maps the false southing parameter (symbol: FS). This is the same y translation than `FALSE_NORTHING`, but of opposite sign.

      Actually, there is usually no parameter named "false southing" in a map projection. But some projections like "Transverse Mercator (South Orientated)" are defined in such a way that their "false northing" parameter is effectively a "false southing". This enumeration value can be used for informing `NormalizedProjection` about that fact.

  - ### Method Detail

    - #### values

          public static NormalizedProjection.ParameterRole[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (NormalizedProjection.ParameterRole c : NormalizedProjection.ParameterRole.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static NormalizedProjection.ParameterRole valueOf​(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null