Tesis profesional presentada por José Manuel Menéndez Poo

Licenciatura en Ingeniería en Sistemas Computacionales. Departamento de Ingeniería en Sistemas Computacionales. Escuela de Ingeniería, Universidad de las Américas Puebla.

Jurado Calificador

Presidente: Mtra. Carolina Yolanda Castañeda Roldán
Vocal y Director: Dr. David Ricardo Sol Martínez
Secretario: Dr. Santos Gerardo Lázzeri Menéndez

Cholula, Puebla, México a 11 de mayo de 2005.

Resumen

Visualización de documentos utilizando SVG

La firma de software Adobe produce un visualizador para SVG, el cual puede ser adaptado a los navegadores de Internet. Este adaptador se encuentra actualmente (2005) en su segunda versión, y tiene la capacidad de visualizar todo tipo de contenido SVG. Dado que, SVG está basado en XML, contenido como imágenes, deben de estar separados al documento SVG, referenciados mediante el lenguaje XLink (XML Linking Language). Esto trae como consecuencia una conexión extra por parte del navegador por cada uno de estos elementos que no se encuentren implícitos en el documento SVG. Todo esto es muy ventajoso desde el punto de vista del intercambio de información, y la revisión humana. Con este ejemplo podríamos ver el gran potencial de SVG, acompañado de algunas desventajas, las cuales serán mencionadas en el capítulo 3 en la sección de comparación de SVG contra Flash.

Visualización de documentos utilizando Macromedia Flash El visor de documentos de Flash puede adoptar dos modalidades, la primera, al igual que SVG es de manera empotrada en el navegador de Internet; la segunda es como una aplicación independiente que se conoce como ?Reproductor Flash?. En las primeras versiones de Flash, todo el contenido del documento, incluyendo información binaria (imágenes, video, etc.) estaba compilado en un mismo archivo. Este archivo puede tener un gran tamaño, pero debido a su composición interna, como se discute en el capítulo 3, puede ser descargado de manera progresiva e ir mostrando poco a poco el contenido al navegante.

Debido a las necesidades de los usuarios, Flash fue adoptando maneras más flexibles de trabajar, y ahora se puede distribuir el contenido de un documento en varios archivos, los cuales pueden ser descargados dinámicamente, como el navegante los vaya requiriendo.

Se puede hablar de una mayor popularidad del visualizador de Macromedia Flash, como lo demuestra la misma empresa en un censo realizado de manera electrónica a finales del año 2003, en el cual asegura que el 98% de las computadoras personales cuentan con un visualizador de Flash empotrado en el navegador de Internet, mientras un 16% de los navegadores cuentan con un visualizador de archivos con formato SVG [Censo-Flash]. Sin duda en Macromedia son pioneros en el enriquecimiento del contenido en sitios Web, después de una larga carrera de experiencia, Macromedia Flash es hoy uno de los productos más aceptados entre los usuarios, ya que puede dar vida al simple HTML que muestra solamente texto e imágenes [Flash-2004].

Metadatos en documentos Cartográficos

Cuando hablamos de SVG, tratamos de pintar gráficos bidimensionales en un dispositivo, el cual es muy comúnmente el monitor. Esto significa que debemos de hacerlo rápido. El concepto ?Rápido? incluye la descarga de los datos a ser pintados, y al tener tantos metadatos en el documento, el concepto de ?descargar rápido? se podría ver opacado. Esto no significa que SVG sea malo, o que no sirva; SVG es un lenguaje excelente para el intercambio de gráficos, o para la revisión humana de los datos, entre otras tareas importantes.

Planteando un escenario en el cual un usuario solamente desea visualizar un mapa (vía Internet), debemos de realizarnos la siguiente pregunta: ¿Es de utilidad para el usuario saber que hay una línea que va de cierta coordenada a otra? Si la respuesta es no, esto quiere decir que al usuario solamente le preocupa consultar el mapa como un usuario final, como por ejemplo, para consultar una carretera que vaya de cierta ciudad a otra. Si la respuesta es sí, estamos hablando de un usuario avanzado que necesita los datos para manipularlos más tarde, o posiblemente para alterarlos y hacer sus propias versiones del documento.

En la tesis de Espinosa [Espinosa-2002] los documentos SVG son generados a partir de un documento GML. Se incluyen datos vectoriales sobre los trazos sobre el lienzo a pintar. Estos datos, están intactos, lo que quiere decir que si hay una calle de 100 metros, SVG pinta una línea de 100 metros, y se deja la transformación a pantalla con un simple arreglo que se hace en transformación de coordenadas. Esto significa que cualquier persona que de un vistazo al código fuente del documento puede obtener la información intacta sobre la calle de 100 metros. Es aquí cuando entra el tema de la confidencialidad, y nos podremos realizar la siguiente pregunta: ¿Queremos que los usuarios conozcan los datos exactos acerca de nuestros mapas? De nuevo, si la respuesta es no, estamos en serios problemas. Se tendría que recurrir a una transformación programática de los datos para dar la información exclusiva en píxeles.

Hacemos una segunda reflexión. Al ser basado en XML, SVG facilita a los autores de los documentos su creación, pero el precio a pagar es alto: el tiempo de descarga. Este costo de tiempo puede ser muy alto si tomamos en cuenta que los documentos cartográficos suelen tener cantidades muy grandes de datos. Claramente podemos notar una necesidad de comprimir la información que se está transmitiendo, sobre todo si el usuario final está interesado solamente en el análisis gráfico del documento. ¿Vale la pena hacer al usuario esperar, sólo porque fue fácil para nosotros crear el documento? Con un poco de esfuerzo se pueden buscar métodos alternos para enviar esos datos más rápidamente. Como se mencionó anteriormente, al hablar de pintar un gráfico en un dispositivo de cómputo, todo se resume en dos aspectos: Eficacia y eficiencia. Esto quiere decir que lo debemos de hacer bien y rápido. Si estamos en un contexto donde la información debe de ser enviada por la red, rápido implica también descargar rápido. Esa gran cantidad de metadatos que tenemos en SVG retrasan la descarga de los datos que realmente le interesan al usuario. El formato de almacenamiento de Flash está diseñado para brindar únicamente esos datos. Al ser un formato binario, se necesita una receta para formar el archivo. Esta receta es llamada especificación y nos dice cómo se constituye el archivo, bit por bit.

Después de este par de reflexiones, podemos empatar la posibilidad de visualizar un mapa en SVG contra la posibilidad de hacerlo en Flash, el cual es un documento binario, que contiene la información en píxeles. El hecho de que sea binario hace más difícil (aunque no imposible) obtener la información vectorial, en píxeles, pero al tener una composición específica y eliminar los metadatos, podemos tener descargas más rápidas. La información específica, como la calle de 100 metros, puede ser recuperada también, pero solamente aproximando la escala del documento.

Objetivo: Visualizar SVG Utilizando Macromedia Flash

Es por causa de lo anterior expuesto, que se consideran algunos escenarios donde el uso posible de Flash para visualizar documentos que actualmente se están visualizando mediante SVG, podría mejorar en mucho la experiencia del usuario final. No se plantea como una solución para proteger el contenido del documento cartográfico, ya que, como se menciona en la sección anterior, se podrían escalar los vectores a fin de obtener datos muy aproximados a los originales.

Sin embargo puede resultar algo muy útil al hablar de clientes delgados en su capacidad de almacenamiento y en su velocidad de transferencia de datos. Cada vez son más populares los dispositivos móviles, y mayor su capacidad, aunque dudablemente igualen a las capacidades de una computadora personal por un tiempo, lo cual nos regresa a la era donde encontramos muy limitados de recursos en los clientes.

A pesar de las pocas capacidades de los dispositivos móviles, comparándolos con las computadoras personales, Macromedia ha publicado ya, versiones de su visualizador de Macromedia Flash para los siguientes sistemas operativos: Windows CE, Windows Mobile, Palm, Nokia (Teléfonos celulares) y SonyEriccson (Teléfonos celulares).

Los sistemas operativos mencionados anteriormente, son dominantes en el mercado de los dispositivos móviles, los cuales tienen la capacidad de acceder a Internet con un navegador Web que opera sin problemas el protocolo HTTP. Al combinarlo con la buena noticia de Macromedia y su amplia gama de visualizadores, obtenemos una gran posibilidad de éxito en el proyecto de este documento.

También analiza si existen ventajas ante la visualización de un formato a otro, debido a que pueden existir diferentes bondades entre los formatos que se estudian en este documento.

Ventajas al visualizar documentos cartográficos con Macromedia Flash

Concretamente, obtenemos las siguientes ventajas al visualizar documentos cartográficos con Flash: ? Es un formato más popular, tiene más aceptación

? Está instalado en la mayoría de los navegadores de Internet ? Es un formato binario y por tanto, compacto ? El reproductor de archivos Flash tiene varios años de experiencia (aproximadamente 10 años) ? Existen reproductores de Flash para los dispositivos móviles más populares ? El reproductor de Flash puede estar basado en Java. Esto permite su entrada a todos los dispositivos que soportan Java o su versión móvil (Incluyendo teléfonos celulares) ? Debido a su composición interna, los documentos cartográficos en especial consumen menos espacio de almacenamiento que otro tipo de vectores. Esto se debe a que en su mayoría, los documentos cartográficos están formados por una serie de puntos a manera de polígonos o polilíneas. El formato SWF almacena muy compactamente este tipo de sucesiones de coordenadas Desventajas al visualizar documentos cartográficos con Macromedia Flash Desafortunadamente, también contamos con algunas desventajas al visualizar documentos cartográficos con Flash: ? El usuario final no tiene acceso a los datos de manera informática, sólo de manera visual ? La composición interna de SWF (Flash) es muy compleja y poco flexible ? Representar texto en SWF (Componiendo bit por bit el archivo) es muy complejo, debido al soporte de múltiples lenguajes incluyendo el japonés ? La interacción con el usuario sólo se encuentra de manera potencial en este proyecto. Se necesita desarrollar esa parte para que pueda existir

Escenarios donde se recomienda visualizar con Macromedia Flash

A partir de las observaciones sobre las ventajas y desventajas de visualizar documentos cartográficos utilizando Macromedia Flash, es necesario destacar situaciones o casos de uso en los que se recomienda ampliamente visualizar documentos cartográficos de esta manera:

? Dispositivos móviles. Es cada vez más frecuente el uso de este tipo de dispositivos para más tipos de tareas. También es una realidad el gran soporte que se está brindando a la distribución de conexión a la red de manera inalámbrica. Sin duda, debido al tamaño de los archivos SWF y la disponibilidad del reproductor de Flash, en servicios móviles se plantea esta solución como una excelente opción. ? Archivos de gran tamaño. Como se puede observar en el capítulo de resultados, el nivel de compresión promedio es del 91%. Partiendo de este dato, es diferente ofrecer al usuario un archivo de 70mb a un archivo de ~900kb

El trabajo que presenta este documento de tesis, se realizó con la esperanza de comprobar que puede ser mucho más eficiente transportar datos gráficos con Macromedia Flash en ciertos casos. También con la intención de que este trabajo fomente la realización de otros similares sobre o mediante el aquí presentado.

Trabajo Futuro

El trabajo presentado en esta tesis, no está completado. Debido a la gran gama de capacidades con las que cuenta flash y el formato SWF. Observando este trabajo desde el punto de vista de documentos cartográficos: ? Interacción con las capas. Sería muy interesante que el usuario pudiera activar y desactivar capas del mapa, para facilitar su visualización. ? Incluir texto. Esto podría ser una buena opción tras estudiar la posibilidad de incluir una fuente con poco detalle, pues así no tendría una descripción muy extensa, y por lo tanto, no provoque archivos más grandes en disco. ? Interacción con el Mouse. Tras cierto lenguaje de marcado, al pasar el Mouse (o el stylus en dispositivos móviles) Flash podría indicar el nombre de la geometría que se está indicando. ? Incluir Mapas de Bits. Pueden llegar a tener gran utilidad para representar iconografía propia de los mapas geográficos.

Este documento fue redactado con la intención de proporcionar las herramientas necesarias para complementarlo o suplementarlo.

Índice de contenido

Dedicatorias (archivo pdf, 6 kb)

Capítulo 1. Introducción (archivo pdf, 55 kb)

  • 1.1 Multimedios en Internet
  • 1.2 Documentos Cartográficos
  • 1.3 Visualización de documentos utilizando SVG
  • 1.4 Visualización de documentos utilizando Macromedia Flash
  • 1.5 Metadatos en documentos Cartográficos
  • 1.6 Objetivo: Visualizar SVG Utilizando Macromedia Flash
  • 1.7 Trabajos similares

Capítulo 2. Marco teórico (archivo pdf, 369 kb)

  • 2.1 Gráficos vectoriales escalables (SVG)
  • 2.2 Macromedia Flash
  • 2.3 Comparación de SVG y SWF
  • 2.4 El formato FXML

Capítulo 3. Conversión de SVG a SWF (archivo pdf, 77 kb)

  • 3.1 Cómo convertir de SVG a SWF
  • 3.2 Convertir de SVG a FXML
  • 3.3 Convertir de FXML a SWF

Capítulo 4. Resultados (archivo pdf, 54 kb)

  • 4.1 Pruebas de compresión
  • 4.2 Pruebas de velocidad de conversión
  • 4.3 Pruebas de velocidad de transmisión (SVG vs. SWF)
  • 4.4 Pruebas en Dispositivos Móviles

Capítulo 5. Conclusiones (archivo pdf, 31 kb)

  • 5.1 Ventajas al visualizar documentos cartográficos con Macromedia Flash
  • 5.2 Desventajas al visualizar documentos cartográficos con Macromedia Flash
  • 5.3 Escenarios donde se recomienda visualizar con Macromedia Flash
  • 5.4 Trabajo Futuro

Referencias (archivo pdf, 13 kb)

Apéndice A. DTD de FXML 125 (archivo pdf, 25 kb)

Menéndez Poo, J. M. 2005. Visualización de Documentos Cartográficos Utilizando Macromedia Flash. Tesis Licenciatura. Ingeniería en Sistemas Computacionales. Departamento de Ingeniería en Sistemas Computacionales, Escuela de Ingeniería, Universidad de las Américas Puebla. Mayo. Derechos Reservados © 2005.