Interface RectifiableGrid

  • All Superinterfaces:
    GridPositioning
    All Known Subinterfaces:
    RectifiedGrid

    public interface RectifiableGrid
    extends GridPositioning
    Represents a general coordinate conversion algorithm to be applied to the grid. In the special case where the coordinate conversion is affine, see RectifiedGrid. This class defines the required convertCoordinates and inverseConvertCoordinates methods required by the RectifiableGrid interface and provides access to the MathTransform object associated with the algorithm. Children of this class need only supply the Conversion object (stored in the inherited operation attribute) to produce a functional coordinate conversion object.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      DirectPosition convertCoordinates​(GridCoordinates g)
      Converts grid coordinates through an affine transform to a direct position.
      MathTransform getGridToCRS()
      This optional attribute is specified on the GridGeometry from the legacy OGC 01-004 specification.
      Conversion getInverseOperation()
      This inherited attribute shall contain only the Conversion subtype of the CoordinateOperation interface, signifying that RectifiableGrid and children represent only coordinate conversions as defined by ISO 19111.
      Conversion getOperation()
      This attribute shall contain only the Conversion subtype of the CoordinateOperation interface, signifying that RectifiableGrid and children represent only coordinate conversions as defined by ISO 19111.
      GridCoordinates inverseConvertCoordinates​(DirectPosition p)
      Converts through an affine transform a direct position to the grid coordinates of the nearest grid point.
    • Method Detail

      • getOperation

        Conversion getOperation()
        This attribute shall contain only the Conversion subtype of the CoordinateOperation interface, signifying that RectifiableGrid and children represent only coordinate conversions as defined by ISO 19111. This attribute shall be identical to the conversion attribute.
        Specified by:
        getOperation in interface GridPositioning
        Returns:
        information about the implemented coordinate operation.
      • getInverseOperation

        Conversion getInverseOperation()
        This inherited attribute shall contain only the Conversion subtype of the CoordinateOperation interface, signifying that RectifiableGrid and children represent only coordinate conversions as defined by ISO 19111. This attribute shall be identical to the conversion attribute.
        Specified by:
        getInverseOperation in interface GridPositioning
        Returns:
        the inverse of GridPositioning.getOperation().
      • convertCoordinates

        DirectPosition convertCoordinates​(GridCoordinates g)
                                   throws TransformException
        Converts grid coordinates through an affine transform to a direct position. This is an adapter method for the MathTransform.transform(org.opengis.geometry.DirectPosition, org.opengis.geometry.DirectPosition) method. The MathTransform object used in the conversion is associated with the "conversion" and "operation" attributes.
        Throws:
        TransformException
      • inverseConvertCoordinates

        GridCoordinates inverseConvertCoordinates​(DirectPosition p)
                                           throws TransformException
        Converts through an affine transform a direct position to the grid coordinates of the nearest grid point. This is an adapter method for the MathTransform.transform(org.opengis.geometry.DirectPosition, org.opengis.geometry.DirectPosition) method. The MathTransform object used in the conversion is associated with the "inverseConversion" and "inverseOperation" attributes.
        Throws:
        TransformException
      • getGridToCRS

        MathTransform getGridToCRS()
        This optional attribute is specified on the GridGeometry from the legacy OGC 01-004 specification. It is retained here because it allows the user access to a conversion object which yields non-integer results. This property is derived from the MathTransform object associated with the operation and conversion attributes, and is merely a convenience method.