Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. // utilizar la libreria ControlP5
  2. import controlP5.*;
  3. import processing.serial.*;
  4.  
  5.  
  6. // definir la variable cp5 del tipo ControlP5
  7. ControlP5 cp5;
  8. Serial puerto;
  9.  
  10. // como deseamos controlar los colores RGB
  11. // necesitamos 3 variables
  12. int valR = 128;
  13. int valG = 128;
  14. int valB = 128;
  15.  
  16. // configuración inicial
  17. void setup() {
  18.  
  19. size(240, 500); // tamaño de la ventana
  20. noStroke(); // no dibujar el border del rectángulo
  21.  
  22. // crear el objeto ControlP5
  23. cp5 = new ControlP5(this);
  24.  
  25. // crear el Slider para el color Rojo
  26. Slider slideR =
  27. cp5.addSlider("R", 0, 255, 128, 15, 180, 50, 300);
  28. slideR.setColor( new CColor(
  29. 0xFFAA0000, 0xFF550000, 0xFFFF0000,
  30. 0xFFFFFFFF, 0xFFFFFFFF));
  31. // crear el Slider para el color Verde
  32. Slider slideG =
  33. cp5.addSlider("G", 0, 255, 128, 95, 180, 50, 300);
  34. slideG.setColor( new CColor(
  35. 0xFF00AA00, 0xFF005500, 0xFF00FF00,
  36. 0xFFFFFFFF, 0xFFFFFFFF));
  37. // crear el Slider para el color Azul
  38. Slider slideB =
  39. cp5.addSlider("B", 0, 255, 128, 175, 180, 50, 300);
  40. slideB.setColor( new CColor(
  41. 0xFF0000AA, 0xFF000055, 0xFF0000FF,
  42. 0xFFFFFFFF, 0xFFFFFFFF));
  43.  
  44. String COM = Serial.list()[0];
  45. puerto = new Serial(this, COM, 9600);
  46.  
  47. }
  48.  
  49. // dibujar cada frame
  50. void draw()
  51. {
  52. background(0xFF444444); // color gris del fondo
  53. // definir el color de relleno combinando los valores
  54. // de los colores de los 3 Sliders
  55. fill(valR, valG, valB);
  56. // dibujar el rectángulo con ese color
  57. rect(15, 15, 210, 150);
  58.  
  59. }
  60.  
  61. // actuar cuando ocurra un evento con los Sliders
  62. public void controlEvent(ControlEvent theEvent) {
  63. // guardar el nombre y valor del evento
  64. String nombre = theEvent.getController().getName();
  65. int valor = int(theEvent.getController().getValue());
  66.  
  67. // guardar el valor en la variable para cada color
  68. if (nombre == "R") {
  69. valR = valor;
  70. puerto.write('r');
  71. puerto.write(valR);
  72. }
  73. if (nombre == "G") {
  74. valG = valor;
  75. puerto.write('g');
  76. puerto.write(valG);
  77. }
  78. if (nombre == "B") {
  79. valB = valor;
  80. puerto.write('b');
  81. puerto.write(valB);
  82. }
  83. }