schmitzm.data
Interface ReadableGrid

All Superinterfaces:
LateLoadable
All Known Subinterfaces:
WritableGrid
All Known Implementing Classes:
AbstractReadableGrid, AbstractWritableGrid, ReadableGridCoverage, WritableGridArray, WritableGridArray.Double, WritableGridArray.Float, WritableGridArray.Integer, WritableGridCoverage, WritableGridRaster

public interface ReadableGrid
extends LateLoadable

Dieses Interface stellt die Basis fuer ein georeferenziertes Raster dar.

Version:
1.0
Author:
Martin Schmitz (University of Bonn/Germany)

Field Summary
static int RASTER_DIM
          Die Dimension des Rasters (2).
 
Method Summary
 double convertRasterToReal(int cell, int dim)
          Konvertiert eine Zellennummer in reale Koordinate.
 int convertRealToRaster(double coord, int dim)
          Konvertiert eine reale Koordinate in eine Zellennummer.
 void dispose()
          Zerstoert das Raster und gibt alle Ressourcen wieder frei.
 double getCellHeight()
          Liefert die reale Hoehe einer Zelle.
 double getCellWidth()
          Liefert die reale Breite einer Zelle.
 CoordinateReferenceSystem getCoordinateReferenceSystem()
          Liefert das CoordinateReferenceSystem in dem das Raster dargestellt ist.
 Object getGridSample(double... coord)
          Liefert einen Wert des Rasters ueber Geo-Koordinaten.
 byte getGridSampleAsByte(double... coord)
          Liefert einen Wert des Rasters ueber Geo-Koordinaten.
 double getGridSampleAsDouble(double... coord)
          Liefert einen Wert des Rasters ueber Geo-Koordinaten.
 float getGridSampleAsFloat(double... coord)
          Liefert einen Wert des Rasters ueber Geo-Koordinaten.
 int getGridSampleAsInt(double... coord)
          Liefert einen Wert des Rasters ueber Geo-Koordinaten.
 long getGridSampleAsLong(double... coord)
          Liefert einen Wert des Rasters ueber Geo-Koordinaten.
 short getGridSampleAsShort(double... coord)
          Liefert einen Wert des Rasters ueber Geo-Koordinaten.
 int getHeight()
          Liefert die Hoehe des Rasters (in Zellen).
 int getMinX()
          Liefert den Index der ersten (Südwest) Zelle in X-Richtung.
 int getMinY()
          Liefert den Index der ersten Zelle (Südwest) in Y-Richtung.
 Object getRasterSample(int... cell)
          Liefert einen Wert des Rasters ueber Raster-Koordinaten.
 byte getRasterSampleAsByte(int... cell)
          Liefert einen Wert des Rasters ueber Raster-Koordinaten.
 double getRasterSampleAsDouble(int... cell)
          Liefert einen Wert des Rasters ueber Raster-Koordinaten.
 float getRasterSampleAsFloat(int... cell)
          Liefert einen Wert des Rasters ueber Raster-Koordinaten.
 int getRasterSampleAsInt(int... cell)
          Liefert einen Wert des Rasters ueber Raster-Koordinaten.
 long getRasterSampleAsLong(int... cell)
          Liefert einen Wert des Rasters ueber Raster-Koordinaten.
 short getRasterSampleAsShort(int... cell)
          Liefert einen Wert des Rasters ueber Raster-Koordinaten.
 double getRealHeight()
          Liefert die reale Breite des Rasters.
 double getRealWidth()
          Liefert die reale Breite des Rasters.
 int getSampleType()
          Liefert die Art der Daten, die im Raster gespeichert werden koennen.
 int getWidth()
          Liefert die Breite des Rasters (in Zellen).
 double getX()
          Liefert die X-Koordinate (Longitude) der Georeferenz der linken unteren Ecke des Rasters (Südwest).
 double getY()
          Liefert die Y-Koordinate (Latitude) der Georeferenz der linken unteren Ecke des Rasters (Südwest).
 
Methods inherited from interface appl.data.LateLoadable
isLateLoadable, loadData, unloadData
 

Field Detail

RASTER_DIM

static final int RASTER_DIM
Die Dimension des Rasters (2).

See Also:
Constant Field Values
Method Detail

dispose

void dispose()
Zerstoert das Raster und gibt alle Ressourcen wieder frei.


getWidth

int getWidth()
Liefert die Breite des Rasters (in Zellen).


getHeight

int getHeight()
Liefert die Hoehe des Rasters (in Zellen).


getMinX

int getMinX()
Liefert den Index der ersten (Südwest) Zelle in X-Richtung.


getMinY

int getMinY()
Liefert den Index der ersten Zelle (Südwest) in Y-Richtung.


getCoordinateReferenceSystem

CoordinateReferenceSystem getCoordinateReferenceSystem()
Liefert das CoordinateReferenceSystem in dem das Raster dargestellt ist.


getRealWidth

double getRealWidth()
Liefert die reale Breite des Rasters.


getRealHeight

double getRealHeight()
Liefert die reale Breite des Rasters.


getCellWidth

double getCellWidth()
Liefert die reale Breite einer Zelle.
Sollte getRealWidth() / getWidth() entsprechen!


getCellHeight

double getCellHeight()
Liefert die reale Hoehe einer Zelle.
Sollte getRealHeight() / getHeight() entsprechen!


getX

double getX()
Liefert die X-Koordinate (Longitude) der Georeferenz der linken unteren Ecke des Rasters (Südwest).


getY

double getY()
Liefert die Y-Koordinate (Latitude) der Georeferenz der linken unteren Ecke des Rasters (Südwest).


getSampleType

int getSampleType()
Liefert die Art der Daten, die im Raster gespeichert werden koennen. Diese wird durch eine der TYPE-Konstanten in DataBuffer repraesentiert.


getRasterSample

Object getRasterSample(int... cell)
Liefert einen Wert des Rasters ueber Raster-Koordinaten.

Parameters:
cell - 2D-Raster-Koordinate (Zellenindizes, beginnend bei getMinX() und getMinY())

getRasterSampleAsShort

short getRasterSampleAsShort(int... cell)
Liefert einen Wert des Rasters ueber Raster-Koordinaten.

Parameters:
cell - 2D-Raster-Koordinate (Zellenindizes, beginnend bei getMinX() und getMinY())

getRasterSampleAsByte

byte getRasterSampleAsByte(int... cell)
Liefert einen Wert des Rasters ueber Raster-Koordinaten.

Parameters:
cell - 2D-Raster-Koordinate (Zellenindizes, beginnend bei getMinX() und getMinY())

getRasterSampleAsInt

int getRasterSampleAsInt(int... cell)
Liefert einen Wert des Rasters ueber Raster-Koordinaten.

Parameters:
cell - 2D-Raster-Koordinate (Zellenindizes, beginnend bei getMinX() und getMinY())

getRasterSampleAsLong

long getRasterSampleAsLong(int... cell)
Liefert einen Wert des Rasters ueber Raster-Koordinaten.

Parameters:
cell - 2D-Raster-Koordinate (Zellenindizes, beginnend bei getMinX() und getMinY())

getRasterSampleAsFloat

float getRasterSampleAsFloat(int... cell)
Liefert einen Wert des Rasters ueber Raster-Koordinaten.

Parameters:
cell - 2D-Raster-Koordinate (Zellenindizes, beginnend bei getMinX() und getMinY())

getRasterSampleAsDouble

double getRasterSampleAsDouble(int... cell)
Liefert einen Wert des Rasters ueber Raster-Koordinaten.

Parameters:
cell - 2D-Raster-Koordinate (Zellenindizes, beginnend bei getMinX() und getMinY())

getGridSample

Object getGridSample(double... coord)
Liefert einen Wert des Rasters ueber Geo-Koordinaten.

Parameters:
coord - 2D-Raster-Koordinate (Lat/Lon-GeoReferenz)

getGridSampleAsShort

short getGridSampleAsShort(double... coord)
Liefert einen Wert des Rasters ueber Geo-Koordinaten.

Parameters:
coord - 2D-Raster-Koordinate (Lat/Lon-GeoReferenz)

getGridSampleAsByte

byte getGridSampleAsByte(double... coord)
Liefert einen Wert des Rasters ueber Geo-Koordinaten.

Parameters:
coord - 2D-Raster-Koordinate (Lat/Lon-GeoReferenz)

getGridSampleAsInt

int getGridSampleAsInt(double... coord)
Liefert einen Wert des Rasters ueber Geo-Koordinaten.

Parameters:
coord - 2D-Raster-Koordinate (Lat/Lon-GeoReferenz)

getGridSampleAsLong

long getGridSampleAsLong(double... coord)
Liefert einen Wert des Rasters ueber Geo-Koordinaten.

Parameters:
coord - 2D-Raster-Koordinate (Lat/Lon-GeoReferenz)

getGridSampleAsFloat

float getGridSampleAsFloat(double... coord)
Liefert einen Wert des Rasters ueber Geo-Koordinaten.

Parameters:
coord - 2D-Raster-Koordinate (Lat/Lon-GeoReferenz)

getGridSampleAsDouble

double getGridSampleAsDouble(double... coord)
Liefert einen Wert des Rasters ueber Geo-Koordinaten.

Parameters:
coord - 2D-Raster-Koordinate (Lat/Lon-GeoReferenz)

convertRealToRaster

int convertRealToRaster(double coord,
                        int dim)
Konvertiert eine reale Koordinate in eine Zellennummer. Liegt der Koordinatenwert genau auf der Grenze zwischen zwei Rasterzellen, wird die naechst "groessere" Zellegewaehlt. Ausnahme bildet der Rand des Rasters. Hier wird die kleinere Zelle (also die letzte) herangezogen

Parameters:
coord - Georeferenz-Koordinate
dim - Dimension, in der die Umrechnung erfolgen soll
Throws:
UnsupportedOperationException - falls eine ungueltige Dimension angegeben wird (nur Werte 0 <= coord < RASTER_DIM sind zulaessig

convertRasterToReal

double convertRasterToReal(int cell,
                           int dim)
Konvertiert eine Zellennummer in reale Koordinate. Dabei wird die Koordinate der Zellenmitte zurueckgegeben.

Parameters:
cell - Rasterzellen-Koordinate
dim - Dimension, in der die Umrechnung erfolgen soll
Throws:
UnsupportedOperationException - falls eine ungueltige Dimension angegeben wird (nur Werte 0 <= coord < RASTER_DIM sind zulaessig