view
Class MouseInputHandler3D

java.lang.Object
  extended by view.MouseInputHandler3D
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.util.EventListener

public class MouseInputHandler3D
extends java.lang.Object
implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener


Constructor Summary
MouseInputHandler3D()
          Construtor da classe MouseInputHandler.
 
Method Summary
static MouseInputHandler3D instanceOf()
          Método de acesso à instancia da classe MouseInputHandler.
 void mouseClicked(java.awt.event.MouseEvent e)
          Método para o tratamento de quando um clique é feito na tela, ele trasnforma o ponto x,y da coordenada onde o usuário clicou na tela para uma trajetoria em espaço 3D e faz a intersecção dessa trajetória com o plano z=0, que é o chão da nossa aplicação.
 void mouseDragged(java.awt.event.MouseEvent e)
          Método para o tratamento de quando o mouse é movido com um dos seus botões pressionado, nesse caso o método calcula quanto o mouse foi arrastado e manda isso como um comando para rotacionar para a câmera
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
          Método para o tratamento de quando o mouse é movido, no momento não fazemos tratamento algum
 void mousePressed(java.awt.event.MouseEvent e)
          Método para o tratamento de quando um botao do mouse é apertado, ele guarda se o botão direito do mouse está apertado, para possibilitar um tratamento diferente caso ele esteja.
 void mouseReleased(java.awt.event.MouseEvent e)
          Método para o tratamento de quando um botao do mouse é solto, ele guarda se o botão direito do mouse deixou de ser apertado, para possibilitar um tratamento diferente caso ele esteja.
 void mouseWheelMoved(java.awt.event.MouseWheelEvent e)
          Método para o tratamento de quando o wheel do mouse é movido.
 void setCamera(Camera cam)
          setCamera é usado para informar o MouseInputHandler com que câmera ele deve se comunicar em relação a eventos de controle de câmera, como rotação ou mudança de zoom.
 void setWindowSize(int Width, int Height)
          setWindowSize informa o MouseInputHandler do tamanho da tela onde a cena está sendo desenhada, essa informação é vital para o tratamento adequado de cliques na tela.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MouseInputHandler3D

public MouseInputHandler3D()
Construtor da classe MouseInputHandler. Armazena em instance a instância da classe MouseInputHandler, para que exista apenas uma referência.

Method Detail

instanceOf

public static MouseInputHandler3D instanceOf()
Método de acesso à instancia da classe MouseInputHandler. esse método deve ser chamado depois da inicializacao da instância através do construtor

Returns:
Uma instância da classe MouseInputHandler.

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Método para o tratamento de quando um botao do mouse é apertado, ele guarda se o botão direito do mouse está apertado, para possibilitar um tratamento diferente caso ele esteja.

Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Método para o tratamento de quando um botao do mouse é solto, ele guarda se o botão direito do mouse deixou de ser apertado, para possibilitar um tratamento diferente caso ele esteja.

Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseWheelMoved

public void mouseWheelMoved(java.awt.event.MouseWheelEvent e)
Método para o tratamento de quando o wheel do mouse é movido. Ele chama uma função da câmera que altera o zoom atual.

Specified by:
mouseWheelMoved in interface java.awt.event.MouseWheelListener

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Método para o tratamento de quando um clique é feito na tela, ele trasnforma o ponto x,y da coordenada onde o usuário clicou na tela para uma trajetoria em espaço 3D e faz a intersecção dessa trajetória com o plano z=0, que é o chão da nossa aplicação. Ao encontrar a posição onde o usuário clicou no chão ele chama o InputHandler para lidar com esse comando.

Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Método para o tratamento de quando o mouse é movido com um dos seus botões pressionado, nesse caso o método calcula quanto o mouse foi arrastado e manda isso como um comando para rotacionar para a câmera

Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Método para o tratamento de quando o mouse é movido, no momento não fazemos tratamento algum

Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener

setCamera

public void setCamera(Camera cam)
setCamera é usado para informar o MouseInputHandler com que câmera ele deve se comunicar em relação a eventos de controle de câmera, como rotação ou mudança de zoom.


setWindowSize

public void setWindowSize(int Width,
                          int Height)
setWindowSize informa o MouseInputHandler do tamanho da tela onde a cena está sendo desenhada, essa informação é vital para o tratamento adequado de cliques na tela.