Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. import processing.serial.*;
  2. int x=550;
  3. int y=450;//el punto centro de la pantalla
  4. int grados=0;//inicio de grados en el que se encuentra el triangulo
  5. Serial port;//puerto por el que vamos a recibir los datos
  6. int valor = 0;
  7. //int valor2=550;
  8. int[] wormx = new int[10];
  9. int[] wormy = new int[10];
  10. void setup()
  11. {
  12.   //println(Serial.list());
  13.   port = new Serial(this,  Serial.list()[0], 9600);
  14.   //new Serial(this, COM[10], 9600);
  15.   size(1100,1100);//tamaƱo de la ventana
  16.   frameRate(60);// especifica el numero de fotogramas que muestra por segundo
  17.   smooth();//suavizar
  18.   fill(15,30,80);//color de la elipse
  19.  
  20. }
  21.  
  22. void draw ()
  23. {
  24.     while (port.available() > 0)
  25.     {
  26.       String cadena ="00"+port.readString();  //Lectura de datos desde arduino
  27.       valor = int(cadena.substring(2,cadena.length()));
  28.       println(cadena + ":" + valor);
  29.     }
  30.  
  31.   background (14,150,10);//color de fondo
  32.   pushMatrix();//entrada a la pila de matriz
  33.   translate(x, y);//trasladamos la elipse en pantalla con respecto a su estado
  34.   rotate(radians(grados));//rotamos la elipse el numero de grados indicado
  35.   ellipse(140, 160, 260, 160);//pintar la elipse
  36.   popMatrix();//restaura la pila de matriz
  37.  
  38.  
  39.  
  40.   //Condiciones que dependen del los valores recibidos desde arduino (movimientos de joystick)
  41.   if (valor == 1)
  42.   {
  43.     valor=0;    
  44.       y-=10;
  45.       if (y<10) y=30;
  46.   }
  47.  
  48.   if (valor == 2)
  49.   {
  50.     valor=0;
  51.     y+=10;
  52.       if (y>400) y=400;
  53.   }
  54.  
  55.   if (valor == 3)
  56.   {
  57.     valor=0;
  58.         x+=10;
  59.       if (x>400) x=400;
  60.   }
  61.  
  62.   if (valor == 4)
  63.   {
  64.     valor=0;
  65.        x-=10;
  66.       if (x<10) x=30;
  67.   }
  68.  
  69.  
  70.  
  71.   if (valor == 5)
  72.   {
  73.     valor=0;
  74.       grados+=5;
  75.       if (grados>360) grados=0;
  76.      
  77.   }
  78.  
  79.   if (valor == 6)
  80.   {
  81.     valor=0;
  82.      grados-=5;
  83.       if (grados<0) grados=360;
  84.   }
  85.  
  86. }