Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import processing.serial.*;
- int x=550;
- int y=450;//el punto centro de la pantalla
- int grados=0;//inicio de grados en el que se encuentra el triangulo
- Serial port;//puerto por el que vamos a recibir los datos
- int valor = 0;
- //int valor2=550;
- void setup()
- {
- //println(Serial.list());
- port = new Serial(this, Serial.list()[0], 9600);
- //new Serial(this, COM[5], 9600);
- size(1100,1100);//tamaño de la ventana
- frameRate(100);// especifica el numero de fotogramas que muestra por segundo
- smooth();//suavizar
- fill(15,30,80);//color de la elipse
- }
- void draw ()
- {
- while (port.available() > 0)
- {
- String cadena ="00"+port.readString(); //Lectura de datos desde arduino
- valor = int(cadena.substring(2,cadena.length()));
- println(cadena + ":" + valor);
- }
- background (0,0,0);//color de fondo
- pushMatrix();//entrada a la pila de matriz
- translate(x, y);//trasladamos la elipse en pantalla con respecto a su estado
- rotate(radians(grados));//rotamos la elipse el numero de grados indicado
- ellipse(70, 80, 130, 80);//pintar la elipse
- popMatrix();//restaura la pila de matriz
- //Condiciones que dependen del los valores recibidos desde arduino (movimientos de joystick)
- if (valor == 1)
- {
- valor=0;
- y-=10;
- if (y<10) y=30;
- }
- if (valor == 2)
- {
- valor=0;
- y+=10;
- if (y>400) y=400;
- }
- if (valor == 3)
- {
- valor=0;
- x+=10;
- if (x>400) x=400;
- }
- if (valor == 4)
- {
- valor=0;
- x-=10;
- if (x<10) x=30;
- }
- if (valor == 5)
- {
- valor=0;
- grados+=5;
- if (grados>360) grados=0;
- }
- if (valor == 6)
- {
- valor=0;
- grados-=5;
- if (grados<0) grados=360;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement