Class GridReaderLayer

Direct Known Subclasses:
WMSLayer, WMTSMapLayer

public class GridReaderLayer extends RasterLayer
Layer used to draw a raster GridCoverage2DReader.

Direct access to the AbstractGridCoverage2DReader is available using getReader(), the outline of the raster is also available via toFeatureCollection() for vector based rendering systems.

Since:
2.7
Author:
Jody Garnett
  • Field Details

    • reader

      protected GridCoverage2DReader reader
      Grid coverage reader allowing direct access to raster content.
    • params

      protected GeneralParameterValue[] params
      Optional parameters to control the rendering process.
  • Constructor Details

    • GridReaderLayer

      public GridReaderLayer(GridCoverage2DReader reader, Style style)
      Create a lyaer to draw the provided grid coverage reader.
      Parameters:
      reader - a reader with the new layer that will be added
    • GridReaderLayer

      public GridReaderLayer(GridCoverage2DReader reader, Style style, String title)
      Create a layer to draw the provided grid coverage reader.
      Parameters:
      reader - a reader with the new layer that will be added.
    • GridReaderLayer

      public GridReaderLayer(GridCoverage2DReader reader, Style style, GeneralParameterValue[] params)
      Create a layer with optional parameters to control the rendering process.
      Parameters:
      reader - a reader with the new layer that will be added.
    • GridReaderLayer

      public GridReaderLayer(GridCoverage2DReader reader, Style style, String title, GeneralParameterValue[] params)
      Create layer title and optional parameters used to control the rendering process.
      Parameters:
      reader - a reader with the new layer that will be added.
      params - GeneralParameterValue[] that describe how the AbstractGridCoverage2DReader shall read the images
  • Method Details

    • dispose

      public void dispose()
      Description copied from class: Layer
      Allows a Layer to clean up any listeners, or internal caches or resources it has added during use.
      Overrides:
      dispose in class RasterLayer
    • getBounds

      public ReferencedEnvelope getBounds()
      Description copied from class: Layer
      The bounds of the Layer content (if known). The bounds can be used to determine if any of the layers content is "on screen" when rendering the map; however often it is expensive to calculate a layers bounds up front so we are allowing this value to be optional.

      The returned bounds are a ReferencedEnvelope using the same CoordinateReferenceSystem as the layers contents.

      Specified by:
      getBounds in class Layer
      Returns:
      layer bounds, null if unknown
    • getReader

      public GridCoverage2DReader getReader()
      Reader used for efficient access to raster content.
    • getParams

      public GeneralParameterValue[] getParams()
      Parameter values used when reading.
      Returns:
      parameters used when reader
    • toFeatureCollection

      public SimpleFeatureCollection toFeatureCollection()
      Description copied from class: RasterLayer
      Supply a FeatureCollection indicating where the raster is located, we ask that the features use the same coordinate reference system as your raster data and form an outline or foot print of the information you have available.

      This is an interesting method for a RasterLayer to have; some of the rendering systems are willing to render your raster content as an outline; for this to work they need this method to supply a feature collection indicating where the content is located. The information may also be used to determine if any of your raster content is on screen (and thus needs to be rendered).

      Note this is a feature collection to allow for raster content that contains more than one image; and is not based bounding boxes (as sometimes rasters are rotated or stretched into position).

      You may find the FeatureUtilities useful in wrapping up your raster content.

      Specified by:
      toFeatureCollection in class RasterLayer
      Returns:
      SimpleFeatureCollection indicating the location of raster content