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 Detail

      • 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