[Gvsig_desarrolladores] cargar una capa

Oscar Garcia oscarg en dielmo.com
Lun Ene 12 20:20:09 CET 2009


Gracias nacho has sido de gran ayuda. No hubiera caído en lo de
setAreaOfInterest. Como los correos de la lista van a un foro voy a dejar
indicado un ejemplo de cómo se exporta un trozo de raster por código por si
le sirviera a alguien en un futuro. 


	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());
			
	int iBands[] = new int[grid.getBandCount()];
	for (int i = 0; i < iBands.length; i++) {
		iBands[i] = i;
	}
	grid.clearDrawableBand();
	grid.addDrawableBands(iBands);
	grid.setAreaOfInterest(ext.getMin().getX(), ext.getMax().getY(),
tamX, tamY);
	RasterBuf buf = grid.getRasterBuf();

	// salvado a geoRaster
	String sFilename = folder_out + "prueba.tif";
	ext = new Extent(grid.getDataExtent());
	buf.save(sFilename, ext);
			

-----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: lunes, 12 de enero de 2009 17:25
Para: gvsig_desarrolladores en runas.cap.gva.es
Asunto: Re: [Gvsig_desarrolladores] cargar una capa

Hola
El problema es que no le estás diciendo que extensión de datos quieres
cargar. 
Miraté los métodos setAreaOfInterest y busca algún ejemplo por el código de 
como se hace. 

Te recomiendo que si programas cosas con raster te pases cuanto antes a la 
v1.9 (sale del trunk del repositorio SVN) aunque soy consciente que eso 
depende de la situación en que te encuentres. No es facil migrar siempre que

se quiere. La evolución de raster en está versión ha sido muy importante.

Un saludo

On Monday 12 January 2009 16:02:25 Oscar Garcia wrote:
> Hola, he tenido problemas al cargar una capa FLyrRaster por código y
> intentar recuperar de esta misma su RasterBuf. Esto es lo que hago para
> cargar la capa:
>
>
>
> 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();
>
>       RasterBuf buf  = grid.getRasterBuf();
>
>
>
>
>
> El problema es que el RasterBuf que devuelve el grid da un puntero a null.
> ¿Alguien sabe como se carga correctamente una capa para tener acceso al
> RasterBuf?. (estoy en la arquitectura gvSIG 1.1.2)
>
>
>
> Gracias.

-- 
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