Teclado Virtual
MAC0420/MAC5744
Introdução Computação Gráfica
-
IME – Instituto de Matemática e Estatística USP – Universidade de São Paulo
Grupo
Cristina Fang Daniel M. G. Clua Paulo Cheque Vivian D. Betoni
Introdução
•
Interação Homem-Computador•
Usabilidade;•
Usuário é o mais importante;•
Teclados convencionais;•
Adaptação do usuário X Adaptação da ferramenta.•
Inclusão digital de pessoas com deficiências motoras;•
Criação de um editor de textos com entrada de dados vetorial;Objetivos
Modelo
•
Faixa de teclas que formam umacircunferência, rotacionando na horizontal;
•
Comandos para:•
selecionar/apagar um caracter;•
Inserir espaços;•
salvar/carregar um texto.Linguagem e Ferramenta
•
Linguagem: Java (Plataforma Eclispse);•
JMonkey Engine (recursos gráficosOpenGL): Usa a LWGJL (Lightweight Java GAme Library).
Conceitos
•
Espaços e Sistemas de Coordenadas;•
Criação de objetos gráficos;•
Transformações Geométricas;•
Posição da câmera;•
Aplicação de cores e textura;•
Iluminação e normais.Conceitos: Espaços e Sistema de Coordenadas
•
Dois sistemas de coordenadas:•
Tridimensional: Faixa de teclas;•
Bidimensional: cursor, comandos, texto•
JMonkey: classe Vector3f > vetor 3D.Exemplo: Vector3f vetor = new Vector3f(3,2,0);
Conceitos: criação de objetos gráficos
•
Objetos: suporte (formato geométrico) + função de atributos (ex: cor, textura);•
Malha poligonal: decomposição de objetos complexos em formas mais simples, neste projeto foram utilizados triângulos;•
JMonkey: classe Trimesh (malha triangular) - vértices, normais, cores e textura;Conceitos: criação de objetos gráficos
Conceitos: transformações geométricas
•
Translação: utilizada para posicionar os objetos apropriadamente.•
Rotação: usuário seleciona a letra rotacionando um cilindro•
JMonkey: Classe QuaternionConceitos: posição da câmera
•
A câmera utilizada é a padrão criada pelo JMonkey, posicionada na origem do espaço;•
A câmera é mantida estática, pois são os objetos que se movem na cena.Conceitos: Aplicação de cores e texturas
•
Cores: Sistema RGB;•
Teclas de cor branca ou aleatória (quando selecionada)•
Cada caracter possui uma imagem correspondente.•
A textura é aplicada na face frontal do objeto.•
JMonkey: Classes Texture State e TextureConceitos: Aplicação de cores e texturas
•
Fonte de luz pontual;•
Cor difusa: branca;•
Cor ambiente: preta;•
Teclas centrais mais iluminadas, laterais sombreadas;•
JMonkey: Classe PointLight.Conceitos: Iluminação
Conceitos: Iluminação
•
As normais são passadas manualmente;•
Colorização (shading): Flat Shading ou Smooth Shading (modelo de Gouraud);•
Utilizou-se Smooth Shading.O aplicativo
Configurando o aplicativo
Funcionamento
•
A faixa central de letras é utilizada para buscar a letra que queremos selecionar.•
A faixa superior aparecequando o mouse fica acima
da faixa central, dando opções para selecionarmos
caracteres especiais
•
Zonas de velocidades (duas velocidades possíveis)Exemplo: Selecionando a letra p maiúscula
P substitui o p
no disco seletor Letra selecionada
muda de cor
É possível escrever textos com símbolos, letras
(maiúsculas, minúsculas, acentuadas), números.
Pesquisas atuais
•
Dasher•
Interface utilizando zoom•
Utiliza probabilidades para determinar o tamanho da letra e um modelo baseado na liguagemPesquisas atuais
•
GOK, teclado convencional é mostrado na tela do computadorEvoluções possíveis
•
Criação de outros tipos de interfaces;•
Integração com outros tipos dedispositivos, como por exemplo um rastreador de olhar;
•
Acréscimo de funcionalidades próprias dos editores de texto convencionais.•
Principais objetivos propostos foram atingidos;•
Diferentes conceitos vistos em sala de aula puderam ser utilizados;•
A interface é de fácil utilização e não requer conhecimento/aprendizado prévio;•
Velocidade é baixa comparada ao uso de um teclado convencional, mas é aceitável por se basear apenas em movimentos vetoriais.•
Portabilidade (testes em Windows, Linux e Macintosh)Conclusões
Referências
•
http://lwjgl.org;•
http://www.jmonkeyengine.com;•
Velho, Luiz; Gomes, Jonas. Sistemas Gráficos 3D. 1ª edição.Rio de Janeiro: IMPA. 2001;