Deprecated: Function eregi() is deprecated in /home/ckirner/public_html/realidadevirtual/cmsimple/cms.php on line 41
Realidade Virtual e Aumentada - Execução com RV
Realidade Virtual e Aumentada
ENTRADA >   APLICAÇÕES > Torre de Hanoi > Execução com RV

Execução com RV

Torre de Hanoi

(Hanoi Tower)

Execução da Torre de Hanoi com Realidade Virtual
Claudio Kirner - 2007

A modelagem da Torre de Hanoi com realidade virtual permite, aos interessados, uma alternativa realista para testar o “jogo”, uma vez que atua em três dimensões.

Com isto, o software pode ser usado como: jogo, laboratório de estudo de recursividade, em Ciência a Computação, e tema de estudo em realidade virtual.

Considerando que as duas primeiras características já foram exploradas nas páginas anteriores, vamos ver as questões de realidade virtual.

O modelo da Torre de Hanoi aqui apresentado, conforme a Fig. 1, foi desenvolvido por mim, usando a operação de interação denominada “PlaneSensor” ou Plano Sensor da  linguagem VRML.


Fig. 1 – Modelagem da Torre de Hanoi com 3 discos, usando VRML.

Para testar o jogo, o usuário deve ter um navegador VRML (gratuito), que pode ser o Cortona, por exemplo. As instruções de instalação do Cortona podem ser vistas, neste site, indo ao menu em “VRML > Conceitos e Instalação”.

Depois do navegador VRML instalado, clique na Fig.1 para baixar e testar a Torre de Hanoi com 3 discos.

Basta clicar no disco com o botão esquerdo e, mantendo o botão pressionado, levar o disco para onde quiser. Como não há implementação de colisão, os discos podem sobrepor-se, de forma que caberá ao usuário, cuidar para que isto não ocorra.

Para ver os detalhes de implementação, basta abrir o programa baixado com o bloco de notas ou outro editor e analisá-lo, uma vez que contém muitos comentários.

O conceito principal do programa é o Plano Sensor, que consiste em estabelecer um Plano no espaço 3D, no qual o objeto pode ser movimentado.

Para isto, um objeto, como um disco, por exemplo, deve ser definido e associado ao Plano Sensor, usando o comando “ROUTE”:

#VRML V2.0 utf8
---
DEF Disco-P Transform {
   children [
   
Shape { # disco
---
DEF ps-P PlaneSensor{        # colocando o disco pequeno no plano sensor
      enabled TRUE
      maxPosition 12 4.5
      minPosition -2 -2
            } # fim do plano sensor
---
ROUTE ps-P.translation_changed TO Disco-P.translation


Os valores “maxPosition e minPosition” do PlaneSensor, servem para delimitar o espaço, onde o objeto pode ser movimentado.

=====================================================

Está também disponível a modelagem da Torre de Hanoi com seleção de até 6 discos. O usuário poderá selecionar quantos discos quiser para jogar, deixando os discos não usados de lado. A Fig. 2 mostra a seleção de uma torre com 4 discos, deixando 2 discos no lado esquerdo. Para fazer isto, basta o usuário identificar o disco que não quer usar, arrastando-o e deixando-o na base da esquerda. Depois, basta repetir o processo para tirar outro disco do jogo. Para iniciar o jogo, o usuário deverá acertar as alturas dos discos que permaneceram, arrastando-os para as devidas posições.


Fig. 2 - Torre de Hanoi com seleção de 1 a 6 discos no jogo.

Esta versão da Torre de Hanoi possui 2 pontos de vista que podem ser ativados clicando no botão "View Point" no navegador. No caso do Cortona, o view point fica no centro da barra inferior de controles. O primeiro ponto de vista é o da visão 3D, conforme a Fig. 1. O segundo ponto de vista equivale à visão 2D, conforme a Fig. 3. Muitas pessoas preferem o ponto de vista 2D para inicar, achando que a interação é mais fácil. Nessas implementações com o plano sensor, o deslizamento dos discos ocorre num plano vertical, de forma que as facilidades/dificuldades são as mesmas em qualquer ponto de vista.


Fig. 3 - Ponto de Vista da Torre de Hanoi, correspondendo a 2D.

Para baixar a versão da Torre de Hanoi com 6 discos, clique nas Figuras 2 ou 3.

Bom divertimento!

(PRÓXIMO)