Class AbstractMathTransform1D.Inverse

All Implemented Interfaces:
Parameterized, LenientComparable, org.opengis.referencing.operation.MathTransform, org.opengis.referencing.operation.MathTransform1D
Direct Known Subclasses:
LinearInterpolator1D.Inverse
Enclosing class:
AbstractMathTransform1D

protected abstract static class AbstractMathTransform1D.Inverse extends AbstractMathTransform.Inverse implements org.opengis.referencing.operation.MathTransform1D
Base class for implementation of inverse math transforms. This inner class is the inverse of the enclosing AbstractMathTransform1D.

Serialization

This object may or may not be serializable, at implementation choices. Most Apache SIS implementations are serializable, but the serialized objects are not guaranteed to be compatible with future SIS versions. Serialization should be used only for short term storage or RMI between applications running the same SIS version.
Since:
0.7
Version:
1.0
  • Constructor Details

    • Inverse

      protected Inverse()
      Constructs an inverse math transform.
  • Method Details

    • inverse

      public abstract org.opengis.referencing.operation.MathTransform1D inverse()
      Returns the inverse of this math transform. The returned transform should be the enclosing math transform.
      Specified by:
      inverse in interface org.opengis.referencing.operation.MathTransform
      Specified by:
      inverse in interface org.opengis.referencing.operation.MathTransform1D
      Specified by:
      inverse in class AbstractMathTransform.Inverse
      Returns:
      the inverse of this transform.
    • transform

      public org.opengis.referencing.operation.Matrix transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate) throws org.opengis.referencing.operation.TransformException
      Transforms a single point in the given array and opportunistically computes its derivative if requested. The default implementation delegates to MathTransform1D.transform(double) and potentially to MathTransform1D.derivative(double). Subclasses may override this method for performance reason.
      Specified by:
      transform in class AbstractMathTransform
      Parameters:
      srcPts - the array containing the source coordinates (cannot be null).
      srcOff - the offset to the point to be transformed in the source array.
      dstPts - the array into which the transformed coordinates is returned. May be the same than srcPts. May be null if only the derivative matrix is desired.
      dstOff - the offset to the location of the transformed point that is stored in the destination array.
      derivate - true for computing the derivative, or false if not needed.
      Returns:
      the matrix of the transform derivative at the given source position, or null if the derivate argument is false.
      Throws:
      org.opengis.referencing.operation.TransformException - if the point cannot be transformed or if a problem occurred while calculating the derivative.
      See Also:
    • derivative

      public org.opengis.referencing.operation.Matrix derivative(org.opengis.geometry.DirectPosition point) throws org.opengis.referencing.operation.TransformException
      Gets the derivative of this transform at a point. The default implementation ensures that point is one-dimensional, then delegates to MathTransform1D.derivative(double).
      Specified by:
      derivative in interface org.opengis.referencing.operation.MathTransform
      Overrides:
      derivative in class AbstractMathTransform.Inverse
      Parameters:
      point - the position where to evaluate the derivative, or null.
      Returns:
      the derivative at the specified point (never null).
      Throws:
      org.opengis.geometry.MismatchedDimensionException - if point does not have the expected dimension.
      org.opengis.referencing.operation.TransformException - if the derivative cannot be evaluated at the specified point.