Interface RenderingProcess

All Superinterfaces:
Process

public interface RenderingProcess extends Process
An interface to be implemented by processes meant to be integrated as feature collection/grid coverage transformations in a rendering chain.

The method provide information about how the data is altered so that the renderer can query the appropriate part of the input data that will feed the process

Author:
Andrea Aime - GeoSolutions
  • Method Details

    • invertQuery

      Query invertQuery(Map<String,Object> input, Query targetQuery, GridGeometry gridGeometry) throws ProcessException
      Given a target query and a target grid geometry returns the query to be used to read the input data of the process involved in rendering. This method will be called only if the input data is a feature collection.
      Parameters:
      input - The process inputs
      targetQuery - The query against the transformation outputs
      gridGeometry - The grid geometry desired for the outputs of the transformation
      Returns:
      The transformed query, or null if no inversion is possible/meaningful
      Throws:
      ProcessException
    • invertGridGeometry

      GridGeometry invertGridGeometry(Map<String,Object> input, Query targetQuery, GridGeometry targetGridGeometry) throws ProcessException
      Given a target query and a target grid geometry returns the grid geometry to be used to read the input data of the process involved in rendering. This method will be called only if the input data is a grid coverage or a grid coverage reader
      Parameters:
      input - The process inputs
      targetQuery - The query against the transformation outputs
      targetGridGeometry - The grid geometry desired for the outputs of the transformation
      Returns:
      The transformed query, or null if no inversion is possible/meaningful
      Throws:
      ProcessException
    • customizeReadParams

      default GeneralParameterValue[] customizeReadParams(Map<String,Object> input, GridCoverageReader reader, GeneralParameterValue[] params)
      Allows the transformation to customize the read parameters (asl
      Parameters:
      input - The process inputs
      reader - The reader involved
      params - The current parameters
      Returns:
      The original parameters, or a customized version of them
    • clipOnRenderingArea

      default boolean clipOnRenderingArea(Map<String,Object> input)
      Returns true if the code should be given a raster input that is clipped to the rendering area, false if the input can also contain data outside the rendering area (e.g., for interpolation). Applies only to transformations taking a raster input. Default implementation returns false
      Parameters:
      input - The process input parameters
      Returns:
      True if the input should be clipped to the rendering area, false otherwise