La etapa de desarrollo de la extensión
extSDf para dar soporte al formato de archivo
NetCDF en el
gvSIG 1.12 finalizó exitosamente, lográndose los resultados y objetivos planteados.
Para el desarrollo de la extensión se tomó como base el sistema empleado por las capas Raster del
gvSIG, por lo que no fue necesario la reimplementación del mecanismo de representación gráfica de la capa. Para integrar el nuevo formato de datos a los formatos de datos en el
gvSIG como capas
Raster, se creó una fuente de datos encargada de manipular la información desde un archivo
NetCDF (
uclv.gvsig.extsdf.raster.NetCDFRasterDataset). La fuente de datos es la encargada de mediar entre la información proveniente del archivo
NetCDF y la información solicitada por la capa raster (
FlyrRasterSE) para su representación gráfica. En la fuente de datos se realiza el manejo de las operaciones de zoom, desplazamiento y rotación de la capa (
getWindowRaster), representando en cada momento un fragmento de los datos del archivo
NetCDF.
Asociada a la fuente de datos se implementó un controlador para el archivo
NetCDF (
uclv.gvsig.extsdf.NetCDFController), el cual es empleado en toda la extensión para interactuar directamente con la información contenida en el archivo. Su mayor uso se hace en la fuente de datos para leer la información en dependencia del tipo de dato, aunque también es empleado en el resto de los elementos que componen la extensión. El controlador se encarga de manejar el sistema de coordenadas que se está representando gráficamente, así como los ejes de coordenadas y las variables asociadas al sistema de coordenadas. En caso de que la variable a representar contenga una dimensión de tiempo, el controlador se encarga de cargar en memoria sólo los datos para un sólo instante de tiempo y así disminuir el consumo de memoria de la extensión.
Vinculado a la capa
Raster y a la información manejada en el archivo
NetCDF se creó un panel de configuración que permiten modificar algunos parámetros de la representación gráfica. En el panel de configuración
NetCDF (
uclv.gvsig.extsdf.properties.panels.NetCDFPanel) se puede seleccionar el sistema de coordenadas a representar, así como opciones de formato de fecha y hora. En caso de que el sistema de coordenadas representado contenga una variable que represente tiempo, permite seleccionar que instante de tiempo se representará en la gráfica. Una de las características de la extensión, es que permite generar animaciones a partir de archivos
NetCDF cuyo sistema de coordenadas representado contiene una variable de tiempo. Esta característica debe ser activada a través del panel de configuración del archivo
NetCDF.
Todas las propiedades que se configuran de una capa
Raster (estadísticas de la capa, paleta de colores, histograma, transformaciones, etc.) en el
gvSIG se almacenan en una archivo
XML con extensión
RMF. La configuración de la capa asociada a un archivo
NetCDF (
uclv.gvsig.extsdf.NetCDFConfiguration) también es almacenada en ese archivo
XML a través de un serializador (
uclv.gvsig.extsdf.raster.NetCDFConfigurationSerializer) que se encarga de escribir y leer la información desde el archivo
XML. Esta información se guarda desde el panel de configuración
NetCDF y se lee cuando la fuente de datos accede a la información del archivo
NetCDF.
Para generar la animación de los datos contenidos en el archivo
NetCDF en el transcurso de una dimensión de tiempo se implementó una extensión (
uclv.gvsig.extsdf.timeslider.TimeSliderExtension) que incluye una ventana de control de la animación, así como paneles para la configuración de la animación. En la configuración de la animación se permite seleccionar un intervalo de tiempo en el cual se desea realizar la animación, así como el modo de animación (sencillo, repetitivo, alternando la dirección) y el retardo de la animación. El parámetro de retardo de la animación debe ser seleccionado a gusto en dependencia de las prestaciones de la computadora donde ejecuta el
gvSIG, pues si usamos un valor de retardo muy corto en una computadora de bajas prestaciones esto provocará que ocurran "
flashes" o pantallas en blanco entre las capas animadas. La ventana de animación permite exportar una animación o fragmento de la animación a un formato de video
QuickTime Movie (
MOV).
La extensión fue probada sobre el
gvSIG 1.12 portable con datos reales de temperaturas pertenecientes al
British Atmospheric Data Centre, RAL, provistos por la Unidad de Investigaciones Climáticas de la Universidad del Este de Anglia en Reino Unido. Para obtener más información sobre los datos empleados para la validación consultar
http://badc.nerc.ac.uk/data/cru/.
A continuación se muestran un video de la extensión en funcionamiento:
En el Laboratorio de Computación Gráfica del Centro de Estudios de Informática se continuará la implementación de nuevos controladores para el soporte de nuevos formatos de datos como es el formato HDF, así como algoritmos de conversión entre los formatos de datos empleados en el laboratorio.