org.geotools.coverage.grid
Class AbstractGridCoverage

Object
  extended by PropertySourceImpl
      extended by AbstractCoverage
          extended by AbstractGridCoverage
All Implemented Interfaces:
Serializable, PropertySource, Coverage, GridCoverage
Direct Known Subclasses:
GridCoverage2D

public abstract class AbstractGridCoverage
extends AbstractCoverage
implements GridCoverage

Base class for GeoTools implementation of grid coverage.

Since:
2.1
Author:
Martin Desruisseaux (IRD)
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class AbstractCoverage
AbstractCoverage.Renderable
 
Field Summary
static Logger LOGGER
          The logger for grid coverage operations.
 
Fields inherited from class AbstractCoverage
crs
 
Fields inherited from class PropertySourceImpl
cachedPropertyNames, properties, propertySources
 
Constructor Summary
protected AbstractGridCoverage(CharSequence name, CoordinateReferenceSystem crs, GridCoverage[] sources, PropertySource propertySource, Map<?,?> properties)
          Constructs a grid coverage with sources.
protected AbstractGridCoverage(CharSequence name, CoordinateReferenceSystem crs, PropertySource propertySource, Map<?,?> properties)
          Constructs a grid coverage using the specified coordinate reference system.
protected AbstractGridCoverage(CharSequence name, GridCoverage coverage)
          Constructs a new coverage with the same parameters than the specified coverage.
 
Method Summary
protected  String formatEvaluateError(DirectPosition point, boolean outside)
          Constructs an error message for a position that can not be evaluated.
protected  String formatEvaluateError(Point2D point, boolean outside)
          Constructs an error message for a point that can not be evaluated.
 int getNumOverviews()
          Returns the number of predetermined overviews for the grid.
 GridCoverage getOverview(int index)
          Returns a pre-calculated overview for a grid coverage.
 GridGeometry getOverviewGridGeometry(int index)
          Returns the grid geometry for an overview.
 List<GridCoverage> getSources()
          Returns the source data for a grid coverage.
 boolean isDataEditable()
          Returns true if grid data can be edited.
 
Methods inherited from class AbstractCoverage
dispose, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, getCoordinateReferenceSystem, getDimension, getEnvelope, getLocale, getName, getRangeType, getRenderableImage, show, show, show, toString
 
Methods inherited from class PropertySourceImpl
getProperties, getProperty, getPropertyClass, getPropertyNames, getPropertyNames
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface GridCoverage
getGridGeometry, getOptimalDataBlockSizes, getRenderedImage
 
Methods inherited from interface Coverage
evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, evaluate, getCoordinateReferenceSystem, getEnvelope, getNumSampleDimensions, getRangeType, getRenderableImage, getSampleDimension
 

Field Detail

LOGGER

public static final Logger LOGGER
The logger for grid coverage operations.

Constructor Detail

AbstractGridCoverage

protected AbstractGridCoverage(CharSequence name,
                               CoordinateReferenceSystem crs,
                               PropertySource propertySource,
                               Map<?,?> properties)
Constructs a grid coverage using the specified coordinate reference system. If the coordinate reference system is null, then the subclasses must override AbstractCoverage.getDimension().

Parameters:
name - The grid coverage name.
crs - The coordinate reference system. This specifies the coordinate system used when accessing a coverage or grid coverage with the evaluate(...) methods.
propertySource - The source for this coverage, or null if none. Source may be (but is not limited to) a PlanarImage or an other AbstractGridCoverage object.
properties - The set of properties for this coverage, or null if there is none. Keys are String objects (CaselessStringKey are accepted as well), while values may be any Object.

AbstractGridCoverage

protected AbstractGridCoverage(CharSequence name,
                               CoordinateReferenceSystem crs,
                               GridCoverage[] sources,
                               PropertySource propertySource,
                               Map<?,?> properties)
Constructs a grid coverage with sources. Arguments are the same than for the previous constructor, with an additional sources argument.

Parameters:
name - The grid coverage name.
crs - The coordinate reference system.
sources - The sources for a grid coverage, or null if none.
propertySource - The source for properties for this coverage, or null if none.
properties - Set of additional properties for this coverage, or null if there is none.

AbstractGridCoverage

protected AbstractGridCoverage(CharSequence name,
                               GridCoverage coverage)
Constructs a new coverage with the same parameters than the specified coverage.

Parameters:
name - The name for this coverage, or null for the same than coverage.
coverage - The source coverage.
Method Detail

getSources

public List<GridCoverage> getSources()
Returns the source data for a grid coverage. If the GridCoverage was produced from an underlying dataset, the returned list is an empty list. If the GridCoverage was produced using org.opengis.coverage.grid.GridCoverageProcessor, then it should return the source grid coverage of the one used as input to GridCoverageProcessor. In general the getSources() method is intended to return the original GridCoverage on which it depends. This is intended to allow applications to establish what GridCoverages will be affected when others are updated, as well as to trace back to the "raw data".

Specified by:
getSources in interface Coverage
Specified by:
getSources in interface GridCoverage
Overrides:
getSources in class AbstractCoverage
Returns:
The list of sources data for a coverage.

isDataEditable

public boolean isDataEditable()
Returns true if grid data can be edited. The default implementation returns false.

Specified by:
isDataEditable in interface GridCoverage
Returns:
true if grid data can be edited.

getNumOverviews

public int getNumOverviews()
Returns the number of predetermined overviews for the grid. The default implementation returns 0.

Specified by:
getNumOverviews in interface GridCoverage
Returns:
The number of predetermined overviews for the grid.

getOverviewGridGeometry

public GridGeometry getOverviewGridGeometry(int index)
                                     throws IndexOutOfBoundsException
Returns the grid geometry for an overview. The default implementation always throws an exception, since the default number of overviews is 0.

Specified by:
getOverviewGridGeometry in interface GridCoverage
Parameters:
index - Overview index for which to retrieve grid geometry. Indices start at 0.
Returns:
The grid geometry for an overview.
Throws:
IndexOutOfBoundsException - if the specified index is out of bounds.

getOverview

public GridCoverage getOverview(int index)
                         throws IndexOutOfBoundsException
Returns a pre-calculated overview for a grid coverage. The default implementation always throws an exception, since the default number of overviews is 0.

Specified by:
getOverview in interface GridCoverage
Parameters:
index - Index of grid coverage overview to retrieve. Indexes start at 0.
Returns:
A pre-calculated overview for a grid coverage.
Throws:
IndexOutOfBoundsException - if the specified index is out of bounds.

formatEvaluateError

protected String formatEvaluateError(Point2D point,
                                     boolean outside)
Constructs an error message for a point that can not be evaluated. This is used for formatting error messages.

Parameters:
point - The coordinate point to format.
outside - true if the evaluation failed because the given point is outside the coverage, or false if it failed for an other (unknown) reason.
Returns:
An error message.
Since:
2.5

formatEvaluateError

protected String formatEvaluateError(DirectPosition point,
                                     boolean outside)
Constructs an error message for a position that can not be evaluated. This is used for formatting error messages.

Parameters:
point - The coordinate point to format.
outside - true if the evaluation failed because the given point is outside the coverage, or false if it failed for an other (unknown) reason.
Returns:
An error message.
Since:
2.5


Copyright © 1996-2014 Geotools. All Rights Reserved.