Class LongitudeRotation

All Implemented Interfaces:
Serializable, Formattable, MathTransformProvider, Deprecable, LenientComparable, org.opengis.referencing.IdentifiedObject, org.opengis.referencing.operation.OperationMethod

public final class LongitudeRotation extends GeographicOffsets
The provider for "Longitude rotation" (EPSG:9601). The "Longitude rotation" is created as an affine transform containing only a translation term in degrees. Advantage of using an affine transform for such simple operation is that this AffineTransform can be efficiently concatenated with other affine transform instances.

Operation name: Longitude rotation

Operation parameters
Parameter name Default value
Longitude offset
The Apache SIS implementation of this operation method always perform the longitude rotation in degrees. The longitude axis of source and target CRS shall be converted to degrees before this operation is applied.
Since:
0.6
Version:
0.7
Author:
Martin Desruisseaux (IRD, Geomatys)
See Also:
  • Constructor Details

    • LongitudeRotation

      public LongitudeRotation()
      Constructs a provider with default parameters.
  • Method Details

    • createMathTransform

      public org.opengis.referencing.operation.MathTransform createMathTransform(org.opengis.referencing.operation.MathTransformFactory factory, org.opengis.parameter.ParameterValueGroup values) throws org.opengis.parameter.ParameterNotFoundException
      Creates a transform from the specified group of parameter values. The parameter value is unconditionally converted to degrees.

      The operation is created as an affine transform between two two-dimensional CRS. We do not override the AffineTransform2D.getParameterDescriptors() and AffineTransform2D.getParameterValues() methods in order to make that fact clearer, in the hope to reduce ambiguity about the nature of the transform. Note also that the "Longitude rotation" operation has unit of measurement while the "Affine" operation does not, so maybe our unconditional conversion to degrees would be more surprising for the user if the operation was shown as a "Longitude rotation".

      Specified by:
      createMathTransform in interface MathTransformProvider
      Overrides:
      createMathTransform in class GeographicOffsets
      Parameters:
      factory - ignored (can be null).
      values - the group of parameter values.
      Returns:
      the created math transform.
      Throws:
      org.opengis.parameter.ParameterNotFoundException - if a required parameter was not found.
    • redimension

      @Deprecated public final org.opengis.referencing.operation.OperationMethod redimension(int sourceDimensions, int targetDimensions)
      Deprecated.
      ISO 19111:2019 removed source/target dimensions attributes.
      Returns the elements of the given array at an index computed from the given dimensions.
      Overrides:
      redimension in class DefaultOperationMethod
      Parameters:
      sourceDimensions - the desired number of input dimensions.
      targetDimensions - the desired number of output dimensions.
      Returns:
      the redimensioned operation method, or null if none.
    • inverse

      public AbstractProvider inverse()
      The inverse of GeodeticOperation is usually the same operation with parameter signs inverted.
      Overrides:
      inverse in class AbstractProvider
      Returns:
      this for most GeodeticOperation instances.
      See Also: