• Nenhum resultado encontrado

6.3 Hands in Home

6.3.3 Decisões de Interface

Vários trabalhos [17] utilizam interfaces gestuais baseadas na manipulação direta dos elementos virtuais. Usualmente, as mãos são utilizadas para mover e selecionar elementos da interface, com características similares ao mouse nos sistemas desktop ou do toque em sistemas touchscreen. Assim, seguindo este princípio, construímos um protótipo (Fig. 8) para validar a ideia.

A Fig. 8a representa um objeto de interação como, por exemplo, uma porta, ainda não selecionado pelo usuário. A Fig. 8b representa a animação circular dos serviços oferecidos por aquele “objeto”, por exemplo, abrir, fechar, trancar a porta. Os serviços saem do centro do objeto de interação e ficam dispostos de forma circular, ao redor do objeto selecionado. Por fim, a Fig. 8c mostra o protótipo implementado, seguindo estas propriedades. É possível notar que a mão do usuário é representada como um cursor na interface. Ao passar a mão sobre o objeto, seus serviços são dispostos, como ilustra a figura.

Esta interface é baseada em elementos circulares, o que aumenta a área de seleção, amenizando a imprecisão do sistema. Isto também induz a um menor deslocamento das mãos dos usuários, o que consequentemente diminui o esforço durante a seleção [46]. Entretanto, essa solução apontou alguns problemas de usabilidade, destacados a seguir, que nos instigaram a desenvolver outra abordagem para a interface do sistema.

Uma interface de manipulação direta, como a apresentada (Fig. 8), iria impor que o usuário mantivesse as mãos levantadas a maior parte do tempo, o que poderia causar fadiga, em especial aos usuários com limitações motoras. Como o espaço de manipulação dos elementos estaria invisível e posicionado “no ar”, o usuário poderia ter dificuldades também para “alcançar” e interagir com a interface, devido a dificuldade de localização nesse espaço virtual. As limitações de precisão atuais do Microsoft Kinect poderiam também dificultar a manipulação e posicionamento precisos na interface. Além disso, como ainda não é disponibilizado algum suporte nativo de reconhecimento dos movimentos dos dedos, haveria uma maior limitação nos comandos que poderiam ser realizados com as mãos.

Fig. 8 Protótipo de interface circular com manipulação direta via interação gestual.

Para solucionar os problemas detectados, as formas de manipulação e interação foram reprojetadas. Optamos por utilizar gestos corporais ao invés de apenas capturar o posicionamento das mãos. Com isto, a necessidade de precisão foi reduzida, pois a posição exata dos membros do corpo do usuário não seria mais importante, invés disso, o movimento como um todo seria considerado. Isto tornaria também a interação com o sistema mais consistente, pois estaria toda baseada em gestos. E mais adaptável, pois os comandos gestuais poderiam ser modificados para atender a diferentes usuários, inclusive considerando necessidades especiais, como um indivíduo sem algum dos membros.

Essa decisão implica também em outros desafios. Interfaces gestuais tendem a ser naturalmente mais cansativas, pois são baseadas em movimentos do corpo. Com isto, o número de comandos gestuais necessários para acessar os elementos da aplicação deve ser o mínimo possível. Igualmente, a variedade de comandos de navegação deve ser reduzida devido aos problemas anteriormente mencionados. Dessa forma, a interface deve ser adaptada para otimizar

o acesso aos elementos de interesse do usuário, mas mantendo o conjunto de gestos para navegação reduzido e consistente. Além disso, como não seria possível utilizar ações “point and click”, todos os elementos deveriam ser acessíveis através dos comandos gestuais de navegação.

Tendo como base estes princípios, idealizamos uma navegação direcional. Cada movimentação dentro da interface – para a direita, para a esquerda, para cima e para baixo – estaria relacionada a um gesto. Estes movimentos modificariam o elemento selecionado, permitindo a navegação pela interface.

Outra preocupação identificada estava relacionada ao tamanho e visibilidade dos elementos da interface. O Kinect é capaz de identificar distâncias entre cerca de 50 cm e 7,5 m. Erro! Fonte

de referência não encontrada.Entretanto, a distância recomendada para uso é de

aproximadamente 2 metros, para um único usuário22. Seria necessário, portanto, garantir que

mesmo a esta distância os usuários ainda pudessem visualizar os elementos da interface sem dificuldades. Era importante também buscar reduzir o esforço de navegação entre os elementos.

Por isso, optamos por utilizar containers do tipo carrossel circular. Esses componentes permitem reduzir o espaço utilizado para visualizar os itens de uma coleção, mas sem impedir a navegação entre eles. Isso é feito mantendo os itens organizados em uma faixa, com parte deles visível, tipicamente entre 5 e 8 itens, e o resto oculto, com até 3 vezes o número de itens visíveis. Através deles também é possível navegar nos dois sentidos – i.e. direita/esquerda ou cima/baixo –, agilizando o acesso a cada componente.

Fig. 9 Interface utilizando o padrão de design carrossel com manipulação indireta via interação gestual do Hands in Home

22 Manual do kinect: http://download.microsoft.com/download/f/6/6/f6636beb-a352-48ee-86a3-

A Fig. 9 apresenta a interface projetada com base nestes conceitos. Em (a) e (d) temos componentes do tipo carrossel. Em (a) temos as disposições dos objetos da casa, com o carrossel alinhado na horizontal. Em (d) são apresentados os serviços do objeto selecionado, alinhados na vertical. Os elementos selecionados correspondem a (b), o objeto selecionado, e (c), seu serviço.

Para estruturar a informação, optamos por um modelo “em níveis”. Nele a interface estaria distribuída em telas, que exibiriam conjuntos de itens relacionados. Dentro de cada tela, seria possível navegar nos dois eixos, vertical e horizontal, para selecionar os itens, seguindo o mesmo padrão ilustrado na Fig. 9. Utilizando um comando gestual específico, o usuário poderia acionar o item selecionado e o sistema executaria uma ação ou navegaria para outra tela. O usuário poderia também utilizar outro comando gestual para voltar às telas anteriores. O sistema foi organizado de forma a exigir no máximo de dois a três movimentos para descer da tela inicial até os níveis mais baixos.

Documentos relacionados