public class GdalDataSource extends GdalDataset implements Disposable
Modifier and Type | Field and Description |
---|---|
protected int |
aBandNr |
protected int |
bBandNr |
protected DataStoreColorInterpretation |
colorInterpr |
protected java.awt.geom.AffineTransform |
externalTransformation |
protected DataStoreTransparency |
fileTransparency
Estado de transparencia del raster.
|
protected int |
gBandNr |
protected GdalRasterBand[] |
gdalBands |
protected boolean |
georeferenced |
int |
height |
boolean |
isSupersampling |
double |
originX |
double |
originY |
protected java.awt.geom.AffineTransform |
ownTransformation |
protected DataStoreColorTable |
palette |
protected int |
rBandNr |
int[] |
stepArrayX
Vectores que contiene los desplazamientos de un pixel cuando hay supersampling
|
int[] |
stepArrayY |
GeoTransform |
trans |
java.lang.String |
version |
int |
width |
GA_ReadOnly, GA_Update, GDT_Byte, GDT_CFloat32, GDT_CFloat64, GDT_CInt16, GDT_CInt32, GDT_Float32, GDT_Float64, GDT_Int16, GDT_Int32, GDT_TypeCount, GDT_UInt16, GDT_UInt32, GDT_Unknown
Constructor and Description |
---|
GdalDataSource(java.lang.String fName) |
Modifier and Type | Method and Description |
---|---|
void |
dispose()
Disposes the current object, to allow it to close and dispose any used
resources.
|
boolean |
existsNoDataValue()
Obtiene el flag que informa de si el raster tiene valor no data o no.
|
boolean |
existsNoDataValue(int band)
Obtiene el flag que informa de si el raster tiene valor no data o no
en una banda concreta.
|
protected void |
finalize() |
int |
getBlockSize() |
ColorInterpretation |
getColorInterpretation()
Gets the color interpretation
|
ColorTable |
getColorTable()
Gets the color table
|
java.lang.Object[] |
getData(int x,
int y)
Obtiene el valor de un pixel determinado por las coordenadas x e y que se pasan
por par?
|
int[] |
getDataType()
Obtiene el tipo de dato
|
Extent |
getExtentWithoutRot()
Calcula el extent en coordenadas del mundo real sin rotaci?
|
java.lang.String |
getGdalShortName()
Obtiene el nombre del driver de Gdal
|
static int |
getGdalTypeFromRasterBufType(int rasterBufType) |
NoData |
getNoDataValue()
Gets nodata value
|
java.awt.geom.AffineTransform |
getOwnTransformation()
Devuelve la transformaci?
|
static int |
getRasterBufTypeFromGdalType(int gdalType)
Conversi?
|
boolean |
isOpen()
Returns true if this provider is open and false if don't
|
java.awt.geom.Point2D |
rasterToWorld(java.awt.geom.Point2D pt)
Obtiene un punto del raster en coordenadas pixel a partir de un punto en coordenadas
reales.
|
java.lang.Object |
readBlock(int pos,
int blockHeight,
double scale)
Lee una bloque completo del raster y devuelve un array tridimensional del tipo correcto.
|
java.lang.Object |
readCompleteLine(int nLine,
int band)
Lee una l?
|
void |
readLine(java.lang.Object line)
Lectura de una l?
|
void |
readWindow(Buffer buf,
BandList bandList,
double ulx,
double uly,
double lrx,
double lry,
double nWidth,
double nHeight,
int bufWidth,
int bufHeight,
boolean adjustToExtent,
TaskStatus status)
Lee una ventana de datos con resampleo a partir de coordenadas reales.
|
void |
readWindow(Buffer buf,
BandList bandList,
double ulx,
double uly,
double lrx,
double lry,
int nWidth,
int nHeight,
boolean adjustToExtent,
TaskStatus status)
Lee una ventana de datos sin resampleo a partir de coordenadas reales.
|
void |
readWindow(Buffer buf,
BandList bandList,
Extent ext,
java.awt.Rectangle adjustedWindow,
TaskStatus status) |
void |
readWindow(Buffer buf,
BandList bandList,
int x,
int y,
int w,
int h,
TaskStatus status)
Lee una ventana de datos con resampleo a partir de coordenadas en pixeles.
|
void |
selectGdalBands(int nbands)
Selecciona bandas y overview en el objeto GdalRasterBand[] para el n?
|
void |
setDataType(int[] dt)
Asigna el tipo de dato
|
void |
setExternalTransform(java.awt.geom.AffineTransform t)
Asigna una transformaci?
|
void |
setView(double dWorldTLX,
double dWorldTLY,
double dWorldBRX,
double dWorldBRY,
int nWidth,
int nHeight) |
java.awt.geom.Point2D |
worldToRaster(java.awt.geom.Point2D pt)
Obtiene un punto 2D con las coordenadas del raster a partir de uno en coordenadas
del punto real.
|
java.awt.geom.Point2D |
worldToRasterWithoutRot(java.awt.geom.Point2D pt)
Obtiene un punto 2D con las coordenadas del raster a partir de uno en coordenadas
del punto real.
|
close, getColorInterpretationName, getDataset, getDriverByName, getDriverShortName, getGCPCount, getGeoTransform, getMetadata, getMetadata, getProjectionRef, getRasterBand, getRasterCount, getRasterXSize, getRasterYSize, open, setGeoTransform, setProjection
public GeoTransform trans
public int width
public int height
public double originX
public double originY
public java.lang.String version
protected int rBandNr
protected int gBandNr
protected int bBandNr
protected int aBandNr
protected boolean georeferenced
public int[] stepArrayX
public int[] stepArrayY
protected GdalRasterBand[] gdalBands
public boolean isSupersampling
protected DataStoreTransparency fileTransparency
protected DataStoreColorTable palette
protected DataStoreColorInterpretation colorInterpr
protected java.awt.geom.AffineTransform ownTransformation
protected java.awt.geom.AffineTransform externalTransformation
public GdalDataSource(java.lang.String fName) throws GdalException, java.io.IOException
GdalException
java.io.IOException
public static int getGdalTypeFromRasterBufType(int rasterBufType)
public static int getRasterBufTypeFromGdalType(int gdalType)
gdalType
- Tipo de dato de gdalpublic boolean isOpen()
public boolean existsNoDataValue() throws GdalException
GdalException
public boolean existsNoDataValue(int band) throws GdalException
band
- Posici?n de la banda a consultar (0..n)GdalException
public NoData getNoDataValue()
public void setDataType(int[] dt)
dt
- entero que representa el tipo de datopublic int[] getDataType()
public ColorInterpretation getColorInterpretation()
public ColorTable getColorTable()
public java.awt.geom.Point2D worldToRasterWithoutRot(java.awt.geom.Point2D pt)
pt
- punto en coordenadas del punto realpublic java.awt.geom.Point2D worldToRaster(java.awt.geom.Point2D pt)
pt
- punto en coordenadas del punto realpublic java.awt.geom.Point2D rasterToWorld(java.awt.geom.Point2D pt)
pt
- Punto en coordenadas realespublic void setView(double dWorldTLX, double dWorldTLY, double dWorldBRX, double dWorldBRY, int nWidth, int nHeight) throws GdalException
GdalException
public void selectGdalBands(int nbands) throws GdalException
nbands
- N?mero de bandas solicitado.GdalException
public java.lang.Object readCompleteLine(int nLine, int band) throws GdalException
nLine
- N?mero de l?nea a leerband
- Banda requeridaGdalException
public java.lang.Object readBlock(int pos, int blockHeight, double scale) throws GdalException, ProcessInterruptedException
nLine
- N?mero de l?nea a leerband
- Banda requeridaGdalException
ProcessInterruptedException
public void readLine(java.lang.Object line) throws GdalException
line
- GdalException
public void readWindow(Buffer buf, BandList bandList, double ulx, double uly, double lrx, double lry, int nWidth, int nHeight, boolean adjustToExtent, TaskStatus status) throws GdalException, ProcessInterruptedException
buf
- Buffer donde se almacenan los datosbandList
- Lista de bandas que queremos leer y sobre que bandas del buffer de destino queremos escribirlasdWorldTLX
- Posici?n X superior izquierda en coord realesdWorldTLY
- Posici?n Y superior izquierda en coord realesdWorldBRX
- Posici?n X inferior derecha en coord realesdWorldBRY
- Posici?n Y inferior derecha en coord realesnWidth
- Ancho en pixeles del buffernHeight
- Alto en pixeles del bufferGdalException
ProcessInterruptedException
public void readWindow(Buffer buf, BandList bandList, Extent ext, java.awt.Rectangle adjustedWindow, TaskStatus status) throws GdalException, ProcessInterruptedException
public void readWindow(Buffer buf, BandList bandList, double ulx, double uly, double lrx, double lry, double nWidth, double nHeight, int bufWidth, int bufHeight, boolean adjustToExtent, TaskStatus status) throws GdalException, ProcessInterruptedException
buf
- Buffer donde se almacenan los datosbandList
- Lista de bandas que queremos leer y sobre que bandas del buffer de destino queremos escribirlasdWorldTLX
- Posici?n X superior izquierda en coord realesdWorldTLY
- Posici?n Y superior izquierda en coord realesdWorldBRX
- Posici?n X inferior derecha en coord realesdWorldBRY
- Posici?n Y inferior derecha en coord realesnWidth
- Ancho en pixeles de la petici?nnHeight
- Alto en pixeles de la petici?nbufWidth
- Ancho del bufferbufHeight
- Alto del bufferGdalException
ProcessInterruptedException
public void readWindow(Buffer buf, BandList bandList, int x, int y, int w, int h, TaskStatus status) throws GdalException, ProcessInterruptedException
buf
- Buffer donde se almacenan los datosbandList
- Lista de bandas que queremos leer y sobre que bandas del buffer de destino queremos escribirlasx
- Posici?n X en pixelesy
- Posici?n Y en pixelesw
- Ancho en pixelesh
- Alto en pixelesbufWidth
- Ancho del bufferbufHeight
- Alto del bufferGdalException
ProcessInterruptedException
public java.lang.Object[] getData(int x, int y)
x
- Coordenada X del pixely
- Coordenada Y del pixelpublic int getBlockSize()
public java.awt.geom.AffineTransform getOwnTransformation()
public Extent getExtentWithoutRot()
public void setExternalTransform(java.awt.geom.AffineTransform t)
t
- public java.lang.String getGdalShortName()
public void dispose()
Disposable
NOTE:After calling this method, the object may not be usable anymore.
dispose
in interface Disposable
protected void finalize()
finalize
in class java.lang.Object