You are here

Atividade Aula 1

Atividade 1)

 

  Foi realizado o 1º contato com a página da disciplina.

 

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

 

Atividade 2)

 

  Foi realizada a criação de uma nova página, com link para a página nova, upload de anexo e criação de link para o anexo.

 

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

 

Atividade 3)

 

  Foi realizado o download e compilação do ambiente virtual. Foi criada uma assinatura de certificado temporária para a utilização do Web Start. (Tutorial de criação de assinaturas disponível na página http://wiki.plexinfo.net/index.php?title=How_to_sign_JAR_files, disponível em 27/02/2015)

 

  Para acessar o ambiente WS3D, clique aqui: WS3D.

 

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

 

Atividade 4)

  Através do uso do WS3DProxy, disponível na página de recursos computacionais da disciplina. foi possível realizar a comunicação com o ambiente virtual WorldServer3D. Para acessar o arquivo gerado pela compilação, clique aqui: ControladorManual.

  Para testar o programa, primeiramente deve-se abrir o ambiente virtual WorldServer3D. Uma vez iniciado o ambiente, deve-se abrir o ControladorManual.

  Em alguns casos, a conexão entre o WorldServer3D e o ControladorManual falha (os programas executam, mas a criatura não é criada no ambiente). Caso isto ocorra, deve-se abrir o konsole e forçar o fechamento do java por meio da função killall java (isto fecha tudo, incluindo o Netbeans), para então reiniciar o ambiente e o controlador.

  O código é bem simples, graças ao uso do WS3DProxy, e pode ser visto abaixo:

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package controladormanual;
import javax.swing.JOptionPane;
import ws3dproxy.CommandExecException;
import ws3dproxy.WS3DProxy;
import ws3dproxy.model.Creature;
/**
 *
 * @author ra046149
 */
public class ControladorManual {

    /**
     * @param args the command line arguments
     * @throws ws3dproxy.CommandExecException
     */

    static WS3DProxy proxy = null;
    public static Creature c = null;
    
    public static void main(String[] args) throws CommandExecException {
        
      
        // Conecta e cria uma nova criatura
            proxy = new WS3DProxy("127.0.0.1", 4011);//"localhost", 4011);    //      proxy.WS3DProxy();
            c = proxy.createCreature();//100,100,0);
            
            String Lado = new String();
            boolean continua = true;
            
            while(continua == true){
                Lado = JOptionPane.showInputDialog("Para que lado?\n w = up\n s = down\n a = left\n d = right\n p = Stop asking the direction\n");
                //

                switch (Lado){
                  case "w":
                    try {
                        c.move(2,2,-3.14/2);
                    } catch (CommandExecException ex) {
                        System.out.println("Error on moving.");
                    }
                    c.start();
                    break;

                  case "s":
                    try {
                        c.move(2,2,3.14/2);
                    } catch (CommandExecException ex) {
                        System.out.println("Error on moving.");
                    }
                    c.start();
                    break;
                  
                  case "a":
                    try {
                        c.move(2,2,3.14);
                    } catch (CommandExecException ex) {
                        System.out.println("Error on moving.");
                    }
                    c.start();
                    break;
                  
                  case "d":
                    try {
                        c.move(2,2,0);
                    } catch (CommandExecException ex) {
                        System.out.println("Error on moving.");
                    }
                    c.start();
                    break;
                      
                  case "p":
                    continua = false;
                    break;
                      
                  default:
                      JOptionPane.showMessageDialog(null, "Not a valid direction! I'm doing nothing...");

                         }
                try {
                    Thread.sleep(1000);
                }                 //anda nesta direção por meio segundo.
                catch(InterruptedException ex) {
                    Thread.currentThread().interrupt();
                }
                c.stop();
            }
    }
}

 

  A cada 1000ms, o programa pede ao usuário por meio de uma janela pop-up qual a próxima direção para se movimentar.

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer