En este ejemplo de programa HOST se envían comandos (mediante pulsaciones de teclado, en función “keyPressed”) a la plataforma Ladrillo, realizando cambios en el juguete conectado a la plataforma Ladrillo .
Codigo Host en Proccessing
DisplaysHost displaysClient; TACAPI miAPI; int w = 800; int h = 600; int display; int posMotor=0; void setup() { // Keystone will only work with P3D or OPENGL renderers, // since it relies on texture mapping to deform //fullScreen( P3D); size(200, 100, P3D); frameRate(16); //definicion de la API miAPI = new TACAPI(); //virtual screens displaysClient = new DisplaysHost("host"); } void draw() { //Pintar dibujable displaysClient.beginDraw(); displaysClient.endDraw(); } void eventoTAC(TAC ta) { //tratamiento de tacs } void mensajeRecibido(OscMessage theOscMessage) { } void keyPressed() { // ladrillo: "ladrillo", idLadrillo, puerto, valor(o duracion), tono // orden sonar: puerto = 2 // mandar comando: tono = 0 // valor: 0-255 switch(key) { case '1': miAPI.actuator3D("ladrillo", 1, 0, 130, 0); println("1"); break; case '2': miAPI.actuator3D("ladrillo", 1, 0, 0, 0); println("2"); break; case '3': miAPI.actuator3D("ladrillo", 0, 0, 0, 0); break; case '4': miAPI.actuator3D("ladrillo", 0, 0, 170, 0); break; case '+': posMotor+=10; miAPI.actuator3D("ladrillo", 0, 0, posMotor, 0); break; case '-': posMotor-=10; miAPI.actuator3D("ladrillo", 0, 0, posMotor, 0); break; case '9': miAPI.actuator3D("ladrillo", 0, 2, 16, 1); break; case '0': miAPI.actuator3D("ladrillo", 1, 2, 16, 2); break; case ESC: displaysClient.disconnect(); super.stop(); break; } }
Retos de aprendizaje
Documentación
- actuator0D
Este método permite enviar órdenes de tipo 0D a un actuador. Se encuentra dentro de la clase TACAPI. Los parámetros que recibe son los siguientes:
String name: nombre del actuador al que va dirigida la orden.
int idG: id general del actuador
boolean valor: true, envía ‘1’, o false, envía ‘0’.
- actuator1D
Este método permite enviar órdenes de tipo 1D a un actuador. Se encuentra dentro de la clase TACAPI. Los parámetros que recibe son los siguientes:
String name: nombre del actuador al que va dirigida la orden.
int idG: id general del actuador
float valor: valor que se envía al actuador.
- actuator2D
Este método permite enviar órdenes de tipo 2D a un actuador. Se encuentra dentro de la clase TACAPI. Los parámetros que recibe son los siguientes:
String name: nombre del actuador al que va dirigida la orden.
int idG: id general del actuador
float valor1: valor 1 que se envía al actuador.
float valor2: valor 2 que se envía al actuador.
- actuator3D
Este método permite enviar órdenes de tipo 3D a un actuador. Se encuentra dentro de la clase TACAPI. Los parámetros que recibe son los siguientes:
String name: nombre del actuador al que va dirigida la orden.
int idG: id general del actuador
float valor1: valor 1 que se envía al actuador.
float valor2: valor 2 que se envía al actuador.
float valor3: valor 3 que se envía al actuador.