[Gvsig_desarrolladores] exportar raster en bloques
Nacho Brodin
ignacio.brodin en iver.es
Lun Ene 12 17:02:55 CET 2009
Hola Oscar
Te comento como se hace para la versión 1.9 que es la que descargas del trunk
del repositorio aunque para la 1.2 es muy parecido.
GeoRasterWriter es la clase base de los escritores de raster y necesita un
servidor de datos que lo alimente. El funcionamiento es el siguiente: te creas
una instancia de GeoRasterWrite, por ejemplo
GeoRasterWriter grw = GeoRasterWriter.getWriter(writerBufferServer, fileNames,
bandcount, affineTransform, width, height, dataType, params, proj);
El parámetro clave es writerBufferServer que es el servidor de datos, el resto
más o menos son obvios o puedes buscar más información por el código si no los
tienes claros.
WirterBufferServer es una clase que implementa el interfaz IDataWriter y que
tiene métodos readXXData. Cada vez que se escriba un bloque de datos
GeoRasterWriter le pedirá más al servidor de datos (IDataWriter) y este los
servirá a través de sus métodos read. El bloque servido en cada petición será
de ancho como todo el raster y el alto podrás definirlo. Por defecto la altura
de bloque es de RasterLibrary.blockHeight. Puedes usar un servidor de datos
(IDataWriter) que ya esté hecho o hacerte uno para ti. Por ejemplo, la clase
WriterBufferServer es la que se usa para la exportación de recortes de capas
raster.
Finalmente para que funcione puedes añadir el siguiente código:
grw.dataWrite();
Esto le ordenará que escriba. Empezará pidiendo datos a su IDataWriter y este
le servirá un bloque, cuando acabe le pedirá el siguiente bloque y será
IDataWriter el encargado de darselo ordenado.
grw.writeClose();
Esto cierra el dataset
Espero que te aclare algo aunque, evidentemente es una explicación muy
simplificada y te tocará profundizar.
Saludos.
On Monday 12 January 2009 10:02:54 Oscar Garcia wrote:
> Hola lista, tenia interés en saber como a partir de un raster se puede
> subdividir este en bloques más pequeños.
>
>
>
> A la hora de exportar supongo que se debería usar GeoRasterWriter pero no
> consigo entenderlo del todo. ¿Alguien sabe como solucionar este problema?
>
>
>
> Gracias
>
>
>
> Oscar Garcia.
--
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