|
GeoAPI 2.0 Build 2005-06-08 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
@UML(identifier="CV_Coverage",
specification=OGC_01004)
public interface Coverage
Provides access to a coverage.
The essential property of coverage is to be able to generate a value for any point
within its domain. How coverage is represented internally is not a concern.
For example consider the following different internal representations of coverage:
SampleDimension for each sample
dimension in the coverage.
Implementation note:
We expect that many implementations of GridCoverage will want
to leverage the rich set of Java Advanced
Imaging (JAI) features. For those implementations, it is recommended (but not required) to
implement the PropertySource interface as well. In this case, implementation
of PropertySource methods must be consistent with getMetadataNames()
and getMetadataValue(java.lang.String) methods.
|
WARNING: THIS CLASS WILL CHANGE. Current API is derived from OGC Grid Coverages Implementation specification 1.0. We plan to replace it by new interfaces derived from ISO 19123 (Schema for coverage geometry and functions). Current interfaces should be considered as legacy and are included in this distribution only because they were part of GeoAPI 1.0 release. We will try to preserve as much compatibility as possible, but no migration plan has been determined yet. |
RenderableImage,
ImageFunction| Method Summary | |
|---|---|
Object |
evaluate(DirectPosition point)
Return the value vector for a given point in the coverage. |
boolean[] |
evaluate(DirectPosition point,
boolean[] destination)
Return a sequence of boolean values for a given point in the coverage. |
byte[] |
evaluate(DirectPosition point,
byte[] destination)
Return a sequence of unsigned byte values for a given point in the coverage. |
double[] |
evaluate(DirectPosition point,
double[] destination)
Return a sequence of double values for a given point in the coverage. |
float[] |
evaluate(DirectPosition point,
float[] destination)
Return a sequence of float values for a given point in the coverage. |
int[] |
evaluate(DirectPosition point,
int[] destination)
Return a sequence of integer values for a given point in the coverage. |
CoordinateReferenceSystem |
getCoordinateReferenceSystem()
Specifies the coordinate reference system used when accessing a coverage or grid coverage with the evaluate(...) methods. |
InternationalString[] |
getDimensionNames()
The names of each dimension in the coverage. |
String[] |
getDimensionNames(Locale locale)
Deprecated. Replaced by getDimensionNames(). |
Envelope |
getEnvelope()
The bounding box for the coverage domain in coordinate reference system coordinates. |
String[] |
getMetadataNames()
List of metadata keywords for a coverage. |
String |
getMetadataValue(String name)
Retrieve the metadata value for a given metadata name. |
int |
getNumSampleDimensions()
The number of sample dimensions in the coverage. |
RenderableImage |
getRenderableImage(int xAxis,
int yAxis)
Returns 2D view of this coverage as a renderable image. |
SampleDimension |
getSampleDimension(int index)
Retrieve sample dimension information for the coverage. |
List<? extends Coverage> |
getSources()
Returns the sources data for a coverage. |
| Method Detail |
|---|
@UML(identifier="coordinateSystem",
obligation=MANDATORY,
specification=OGC_01004)
CoordinateReferenceSystem getCoordinateReferenceSystem()
evaluate(...) methods. It is also the coordinate
reference system of the coordinates used with the math transform (see
gridToCoordinateSystem).
This coordinate reference system is usually different than coordinate system of the grid.
Grid coverage can be accessed (re-projected) with new coordinate reference system with the
GridCoverageProcessor component. In this case, a new instance of a
grid coverage is created.
Note: If a coverage does not have an associated coordinate reference system,
the returned value will be null.
The gridToCoordinateSystem)
attribute should also be null if the coordinate reference system is null.
evaluate(...) methods, or null.
@UML(identifier="envelope",
obligation=MANDATORY,
specification=OGC_01004)
Envelope getEnvelope()
If a grid coverage does not have any associated coordinate reference system, the minimum and maximum coordinate points for the envelope will be empty sequences.(Minimum row - 0.5, Minimum column - 0.5) for the minimum coordinates (Maximum row - 0.5, Maximum column - 0.5) for the maximum coordinates
@UML(identifier="dimensionNames",
obligation=MANDATORY,
specification=OGC_01004)
InternationalString[] getDimensionNames()
@Deprecated
@UML(identifier="dimensionNames",
obligation=MANDATORY,
specification=OGC_01004)
String[] getDimensionNames(Locale locale)
getDimensionNames().
locale - The locale for the name to be returned, or null for a default
locale.
@UML(identifier="numSampleDimensions",
obligation=MANDATORY,
specification=OGC_01004)
int getNumSampleDimensions()
@UML(identifier="getSampleDimension",
obligation=MANDATORY,
specification=OGC_01004)
SampleDimension getSampleDimension(int index)
throws IndexOutOfBoundsException
index - Index for sample dimension to retrieve. Indices are numbered 0 to
(n-1).
IndexOutOfBoundsException - if index is out of bounds.
@UML(identifier="getSource, numSource",
obligation=MANDATORY,
specification=OGC_01004)
List<? extends Coverage> getSources()
Coverages
will be affected when others are updated, as well as to trace back to the "raw data".
This implementation specification does not include interfaces for creating
collections of coverages therefore the list size will usually be one indicating
an adapted grid coverage, or zero indicating a raw grid coverage.
@UML(identifier="metadataNames",
obligation=MANDATORY,
specification=OGC_01004)
String[] getMetadataNames()
getMetadataValue(java.lang.String),
PropertySource
@UML(identifier="getMetadataValue",
obligation=MANDATORY,
specification=OGC_01004)
String getMetadataValue(String name)
throws MetadataNameNotFoundException
name - Metadata keyword for which to retrieve data.
MetadataNameNotFoundException - if there is no value for the specified metadata name.getMetadataNames(),
PropertySource
@UML(identifier="evaluate",
obligation=MANDATORY,
specification=OGC_01004)
Object evaluate(DirectPosition point)
throws CannotEvaluateException
getCoordinateReferenceSystem() method).
point - Point at which to find the grid values.
PointOutsideCoverageException - if the point is outside the coverage
envelope.
CannotEvaluateException - If the point can't be evaluate for some othe reason.Raster.getDataElements(int, int, Object)
@UML(identifier="evaluateAsBoolean",
obligation=MANDATORY,
specification=OGC_01004)
boolean[] evaluate(DirectPosition point,
boolean[] destination)
throws CannotEvaluateException,
ArrayIndexOutOfBoundsException
point - Point at which to find the coverage values.destination - An optionally preallocated array in which to store the values,
or null if none.
destination was non-null, then it is returned.
Otherwise, a new array is allocated and returned.
PointOutsideCoverageException - if the point is outside the coverage
envelope.
CannotEvaluateException - if the point can't be evaluate for some othe reason.
ArrayIndexOutOfBoundsException - if the destination array is not null
and too small to hold the output.
@UML(identifier="evaluateAsByte",
obligation=MANDATORY,
specification=OGC_01004)
byte[] evaluate(DirectPosition point,
byte[] destination)
throws CannotEvaluateException,
ArrayIndexOutOfBoundsException
point - Point at which to find the coverage values.destination - An optionally preallocated array in which to store the values,
or null if none.
destination was non-null, then it is returned.
Otherwise, a new array is allocated and returned.
PointOutsideCoverageException - if the point is outside the coverage
envelope.
CannotEvaluateException - if the point can't be evaluate for some othe reason.
ArrayIndexOutOfBoundsException - if the destination array is not null
and too small to hold the output.
@UML(identifier="evaluateAsInteger",
obligation=MANDATORY,
specification=OGC_01004)
int[] evaluate(DirectPosition point,
int[] destination)
throws CannotEvaluateException,
ArrayIndexOutOfBoundsException
point - Point at which to find the grid values.destination - An optionally preallocated array in which to store the values,
or null if none.
destination was non-null, then it is returned.
Otherwise, a new array is allocated and returned.
PointOutsideCoverageException - if the point is outside the coverage
envelope.
CannotEvaluateException - if the point can't be evaluate for some othe reason.
ArrayIndexOutOfBoundsException - if the destination array is not null
and too small to hold the output.Raster.getPixel(int, int, int[])
float[] evaluate(DirectPosition point,
float[] destination)
throws CannotEvaluateException,
ArrayIndexOutOfBoundsException
point - Point at which to find the grid values.destination - An optionally preallocated array in which to store the values,
or null if none.
destination was non-null, then it is returned.
Otherwise, a new array is allocated and returned.
PointOutsideCoverageException - if the point is outside the coverage
envelope.
CannotEvaluateException - if the point can't be evaluate for some othe reason.
ArrayIndexOutOfBoundsException - if the destination array is not null
and too small to hold the output.Raster.getPixel(int, int, float[])
@UML(identifier="evaluateAsDouble",
obligation=MANDATORY,
specification=OGC_01004)
double[] evaluate(DirectPosition point,
double[] destination)
throws CannotEvaluateException,
ArrayIndexOutOfBoundsException
point - Point at which to find the grid values.destination - An optionally preallocated array in which to store the values,
or null if none.
destination was non-null, then it is returned.
Otherwise, a new array is allocated and returned.
PointOutsideCoverageException - if the point is outside the coverage
envelope.
CannotEvaluateException - If the point can't be evaluate for some othe reason.
ArrayIndexOutOfBoundsException - if the destination array is not null
and too small to hold the output.Raster.getPixel(int, int, double[])
RenderableImage getRenderableImage(int xAxis,
int yAxis)
throws UnsupportedOperationException,
IndexOutOfBoundsException
GridCoverage backed
by a RenderedImage, the underlying image can be obtained
with:
getRenderableImage(0,1).createDefaultRendering()
xAxis - Dimension to use for the x axis.yAxis - Dimension to use for the y axis.
UnsupportedOperationException - if this optional operation is not supported.
IndexOutOfBoundsException - if xAxis or yAxis is out of bounds.
|
GeoAPI 2.0 Build 2005-06-08 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
|
Symbols, terms and definitions | Copyright OpenGIS® Consortium |