Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. import processing.serial.*;
  2. import controlP5.*;
  3.  
  4. ControlP5 cp5;
  5. Serial puerto;
  6.  
  7. int valorR = 128;  
  8. int valorG = 128;  
  9. int valorB = 128;  
  10. int colorBackgroun = 0xFF1144FF;
  11.  
  12. void setup()
  13. {
  14.   //tamaƱo de la ventana
  15.   size(260, 500);  
  16.  
  17.   //se crea el objeto controlP5
  18.   cp5 = new ControlP5(this);
  19.  
  20.   // crear el Slider para el color Rojo
  21.   Slider slideR =
  22.     cp5.addSlider("R", 0, 255, 128, 15, 180, 50, 300);
  23.   slideR.setColor( new CColor(
  24.     0xFFAA0000, 0xFF550000, 0xFFFF0000,
  25.     0xFFFFFFFF, 0xFFFFFFFF));
  26.   // crear el Slider para el color Verde
  27.   Slider slideG =
  28.     cp5.addSlider("G", 0, 255, 128, 95, 180, 50, 300);
  29.   slideG.setColor( new CColor(
  30.     0xFF00AA00, 0xFF005500, 0xFF00FF00,
  31.     0xFFFFFFFF, 0xFFFFFFFF));
  32.   // crear el Slider para el color Azul
  33.   Slider slideB =
  34.     cp5.addSlider("B", 0, 255, 128, 175, 180, 50, 300);
  35.   slideB.setColor( new CColor(
  36.     0xFF0000AA, 0xFF000055, 0xFF0000FF,
  37.     0xFFFFFFFF, 0xFFFFFFFF));
  38.    
  39.     String COM = Serial.list()[0];
  40.     puerto = new Serial(this, COM, 9600); //comunicacion serial a 9600bps
  41. }
  42.  
  43. void draw()  
  44. {
  45.   //se pinda la pantalla
  46.   background(colorBackgroun);  
  47.   //se pinda los Slider
  48.   fill(valorR, valorG, valorB);
  49.   //dibuja el rectangulo que contendra
  50.   //la combinacion de colores RGB
  51.   rect(15, 15, 210, 150);                          
  52. }  
  53.  
  54. public void controlEvent(ControlEvent theEvent)
  55. {
  56.   //se obtiene el nombre y valor del Slider
  57.   String nombre = theEvent.getController().getName();
  58.   int valor = int(theEvent.getController().getValue());
  59.  
  60.   if (nombre == "R")
  61.   {    
  62.      valorR = valor;  
  63.      //se envia el carecter R en ascii, 82  
  64.      puerto.write(82);    
  65.     //valor de iluminacion del led rojo
  66.      puerto.write(valorR);  
  67.   }
  68.   else if (nombre == "G")
  69.   {
  70.       valorG = valor;      
  71.       //se envia el carecter G en ascii, 71
  72.       puerto.write(71);
  73.       //valor de iluminacion del led verde
  74.       puerto.write(valorG);
  75.   }
  76.   else if (nombre == "B")
  77.   {
  78.      valorB = valor;
  79.      //se envia el carecter B en ascii, 66
  80.      puerto.write(66);
  81.      //valor de iluminacion del led azul
  82.      puerto.write(valorB);
  83.   }
  84. }