NanoZoom: Uma interface de Zoom Contínuo para a Plataforma JME CLDC/MIDP
Histórico
O NanoZoom foi originado como trabalho para a cadeira de Computação gráfica no ano de 2007. À época, precisávamos de uma interface amigável para apresentação do NanoBase, ao passo que o nosso artigo fora aceito no SBBD 2007. A idéia do NanoZoom já havia sido discutiva entre mim e o Prof. José Maria Monteiro em um brainstorming.
Com orientação do Prof. Júlio Guido Militão, construímos uma interface de Zoom Contínuo, onde representamos as tabelas armazenadas no banco como retângulos, similares as notações utilizadas por ferramentas bastante conhecidas, como o Erwin e DBDesigner.
A idéia é simples: o usuário navega por estes metadados utilizando somente o teclado de direção do dispositivo móvel, selecionando tabelas e campos que ele queira incluir na sua consulta. O NanoZoom compila uma consulta SQL à partir dos movimentos realizados pelo usuário no seu canvas e os submete ao NanoBase para processamento.
Como preparação para o SBBD, fizemos uma união do NanoZoom com NanoTooth, onde o usuário conectava-se em um celular via bluetooth ou SMS, utilizando o NanoZoom como interface de consulta.
Ainda em 2007, como monografia para conclusão de curso, Gregory Augusto de Moura formalizou a estrutura idéia do NanoZoom na sua monografia entitulada “NanoZoom: Proposta de uma Interface para Celulares Usando Zoom Semântico”.
Visão Técnica
O NanoZoom é uma aplicação que utiliza o NanoBase como persistência. Na realidade, a estrutura do NanoZoom pode ser utilizada para qualquer SGBD que fale SQL 92. Uma biblioteca SVG é utilizada para desenhar as tabelas no canvas. Para facilitar a operação da aplicação com somente o teclado direcional, foi criado o conceito de Zona de Seleção.
A Zona de Seleção é um cálculo que o NanoZoom faz para saber se o que está de fato sendo exibido no canvas pode ser selecionado pelo usuário, no caso, uma tabela. Caso contrário, a aplicação irá somente permiting a utilização da técnica de panning, que consiste numa câmera estacionária, que pivoteia para os lados, navegando sobre o canvas.
Caso a zona de seleção esteja ligada, a aplicação irá somente permitir que o usuário selecione as colunas das tabelas, assim aplicando operações como construção de predicados, inclusão na seleção ou criação de índices.
Demonstração
Veja um vídeo demonstrando (em Flash) a primeira versão do NanoZoom.
Últimos Comentários