[Gvsig_desarrolladores] exportar raster en bloques

Nacho Brodin ignacio.brodin en iver.es
Jue Ene 15 08:17:47 CET 2009


El problema de la bandas es posible que esté en la implementación del driver 
de ecw pero no estoy seguro sin hacer pruebas. Ten en cuenta que estás 
trabajando con piloto (prototipo). Por eso te recomendaba el paso a la 1.9 en 
la que la parte raster está más evolucionada y se está haciendo un 
mantenimiento.

Saludos

On Wednesday 14 January 2009 18:26:42 Oscar Garcia wrote:
> Por cierto se me olvidaba decir que el problema de volteo de capas solo me
> pasa cuando la capa raster de entrada es de tipo ECW. Mientras con Tif o
> Jpg si que me guarda el color como corresponde. Tiene que estar el problema
> o en el " WriterBufferServer" o en el cargado de datos del "RasterBuf"
> usando el "setAreaOfInterest", yo al menos no le veo otra explicacion
>
> Lo siento por mandar otro correo pero considere que era importante.
>
> Saludos, Oscar Garcia.
>
> -----Mensaje original-----
> De: gvsig_desarrolladores-bounces en runas.cap.gva.es
> [mailto:gvsig_desarrolladores-bounces en runas.cap.gva.es] En nombre de Oscar
> Garcia
> Enviado el: miércoles, 14 de enero de 2009 18:21
> Para: 'Lista de Desarrolladores de gvSIG'
> Asunto: RE: [Gvsig_desarrolladores] exportar raster en bloques
>
> Hola Nacho, al fin he conseguido leer desde otros raster como ecw, tif y
> jpg (que son los que probe). Ahora mi problema sigue siendo que las capas
> siguen guardandose con las bandas volteadas. Es decir que cambia la banda R
> por la B. Este problema creo que es del "WriterBufferServer". De hecho
> probando con la funcion de la librería "cms.jar" RasterBuf.save(sFilename,
> extension) ya me da ese problema de salvado de capas con las bandas
> volteadas. Es posible arreglar este problema de una forma más o menos
> sencilla o me tendría que escribir mi propio "IDataWriter" cosa que no
> entiendo muy bien.
>
> Gracias de nuevo.
>
> -----Mensaje original-----
> De: gvsig_desarrolladores-bounces en runas.cap.gva.es
> [mailto:gvsig_desarrolladores-bounces en runas.cap.gva.es] En nombre de Nacho
> Brodin
> Enviado el: miércoles, 14 de enero de 2009 8:25
> Para: gvsig_desarrolladores en runas.cap.gva.es
> Asunto: Re: [Gvsig_desarrolladores] exportar raster en bloques
>
> Hola
> Te comento un par de cosas por si te son de utilidad.
>
> Normalmente se exporta por bloques para evitar cargar todo el raster en
> memoria cuando este es muy grande. Has de tener en cuenta que si cargas el
> Grid de golpe antes de empezar te estás limitando la cantidad de datos
> leídos.
> Lo recomendable sería que el servidor de datos leyera solo de la fuente de
> datos el trozo que se le pide en cada momento. Si los trozos a exportar van
> a
> ser siempre pequeños pues no tendrás este problema.
>
> Con respecto a excepción con writeByteBand lo único que se me ocurre,
> viendo
>
> el código que pones es que nbands no sea correcto. Si vas a escribir el
> mismo
> número de bandas que el buffer de entrada haz un buf.getBandCount() (creo
> que
> se llama así) en la creación de GeoRasterWriter. Otra posibilidad es que el
> tipo de dato de la entrada no sea compatible con el de la salida pero por
> tu
>
> código no parece que vaya ser ese el problema.
>
> Saludos.
>
> On Tuesday 13 January 2009 17:43:26 Oscar Garcia wrote:
> > Hola nacho, gracias por tu contestación de ayer. Estuve profundizando y
>
> con
>
> > este código de más abajo e llegado a exportar teniendo capas de entrada
> > en ECW, pero cuando es de otro tipo como Tif me salta una excepción en la
> > clase GdalWriter la función writeByteBand.
> >
> > Aparte de eso para entradas ECW me recorta bien pero me cambia la banda R
> > por la banda B.
> >
> > Estoy echo un lió. Bueno gracias más abajo dejo el código.
> >
> >
> > File InputRasterFile = new File(InputRasterFileName);
> > RasterDriver rasterDriver = (RasterDriver)
> > LayerFactory.getDM().getDriver("gvSIG Image Driver");
> > FLyrRaster capaRaster = LayerFactory.createLayer("prueba", rasterDriver,
> > InputRasterFile, Project.getDefaultProjection());
> >
> > Grid grid = capaRaster.getGrid();
> > Extent ext = new Extent(grid.getExtent());
> > grid.setAreaOfInterest(ext.getMin().getX(),
> > ext.getMax().getY(),ancho,alto); RasterBuf buf = grid.getRasterBuf();
> >
> > // salvado a geoRaster
> > String sFilename = folder_out + "prueba."+Outextension;
> > ext = new Extent(grid.getDataExtent());
> > IDataWriter dataWriter = new WriterBufferServer(buf);
> > GeoRasterWriter grw = GeoRasterWriter.getWriter(dataWriter, sFilename,
> > buf.getHeight(), nbands, ext,	10, buf.getWidth(), buf.getHeight(),
> > buf.getDataType());
> >
> > grw.dataWrite();
> > grw.writeClose();
>
> --
> Nacho Brodin
> Grupo desarrollo gvSIG.
> IVER TI S.A.
> C/ Lérida, 20
> 46005-Valencia
> www.iver.es
> www.gvsig.com
>
> Este mensaje y sus archivos son confidenciales. No está permitida su
> reproducción o distribución sin la autorización expresa de "IVER
> Tecnologías de la Información". Si usted no es el destinatario previsto,
> queda desautorizado cualquier uso, acceso o copia de este mensaje. Si ha
> recibido este mensaje por error, por favor bórrelo e infórmenos por esta
> misma vía.
>
>
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en runas.cap.gva.es
> http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores
>
>
> --
> No virus found in this incoming message.
> Checked by AVG.
> Version: 7.5.552 / Virus Database: 270.10.7/1892 - Release Date: 13/01/2009
> 20:04
>
>
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en runas.cap.gva.es
> http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores

-- 
Nacho Brodin
Grupo desarrollo gvSIG.
IVER TI S.A.
C/ Lérida, 20
46005-Valencia
www.iver.es
www.gvsig.com

Este mensaje y sus archivos son confidenciales. No está permitida su reproducción o distribución sin la autorización expresa de "IVER Tecnologías de la Información". Si usted no es el destinatario previsto, queda desautorizado cualquier uso, acceso o copia de este mensaje. Si ha recibido este mensaje por error, por favor bórrelo e infórmenos por esta misma vía.





Más información sobre la lista de distribución gvSIG_desarrolladores