Package org.apache.sis.coverage
Class BandedCoverage
Object
BandedCoverage
- Direct Known Subclasses:
- GridCoverage
A coverage where all sample values at a given location can be provided in an array of primitive type.
 This class does not require sample values to be "physically" stored in different bands,
 but it enforces similar constraints:
 
- Sample values are represented by a primitive type, typically byte,shortorfloat.
- All sample dimensions (bands) use the same primitive type.
- Sample dimensions (bands) are accessed by band index with the first band at index 0.
Comparison with ISO 19123:
 by contrast an ISO 
 The effect of above restrictions appears in Coverage does not restrict sample values to primitive types,
 does not require all sample dimensions to use the same type,
 and sample values are accessed by field names instead of band indices.
 Said otherwise, an ISO Coverage can provide a complex structure (a Record)
 at every location while this BandedCoverage class provides only primitive arrays such as float[].
 getSampleDimensions() and
 BandedCoverage.Evaluator.apply(DirectPosition) method signatures.- Since:
- 1.1
Defined in the sis-feature module
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionstatic interfaceComputes or interpolates values of sample dimensions at given positions.
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionabstract BandedCoverage.EvaluatorCreates a new function for computing or interpolating sample values at given locations.abstract CoordinateReferenceSystemReturns the coordinate reference system to which the cells are referenced.Returns the bounding box for the coverage domain in CRS coordinates.abstract List<SampleDimension>Returns information about the range of this coverage.
- 
Constructor Details- 
BandedCoverageprotected BandedCoverage()Constructs a coverage.
 
- 
- 
Method Details- 
getCoordinateReferenceSystemReturns the coordinate reference system to which the cells are referenced.- Returns:
- the coordinate reference system to which the cells are referenced.
- Since:
- 1.2
 
- 
getEnvelopeReturns the bounding box for the coverage domain in CRS coordinates. The envelope encompasses all cell surfaces, from the left border of leftmost cell to the right border of the rightmost cell and similarly along other axes.For most common cases, the envelope should be present. However, the return value may be empty in cases like: - Functional dataset: in case of a computed resource, the coverage could be potentially valid in an infinite extent (repeating pattern, random numbers for tests, etc.).
- Computational cost: if obtaining the overall envelope is too costly, an implementation might decide to leave the result empty instead of returning a too approximate envelope. For example if a coverage aggregates a lot of data (by dynamically choosing data in a catalog upon evaluation), it might rather not compute envelope union for the entire catalog.
- When the function does not have a clear boundary for its domain of validity, for example because the sample values accuracy decreases progressively with distance.
 - Returns:
- the bounding box for the coverage domain in CRS coordinates if available.
- Since:
- 1.2
 
- 
getSampleDimensionsReturns information about the range of this coverage. Information include names, sample value ranges, fill values and transfer functions for all bands in this coverage. The length of the returned list should be equal to the number of bands in rendered images.- Returns:
- names, value ranges, fill values and transfer functions for all bands in this grid coverage.
 
- 
evaluatorCreates a new function for computing or interpolating sample values at given locations. That function acceptsDirectPositionin arbitrary Coordinate Reference System; conversions to the coverage reference system are applied as needed.Multi-threadingEvaluators are not thread-safe. For computing sample values concurrently, a newEvaluatorinstance should be created for each thread by invoking this method multiply times.- Returns:
- a new function for computing or interpolating sample values.
 
 
-