hola miguel, muchas gracias ! un poco de background al proyecto:
es un montaje de 4 raspberry pis con 4 proyectores - cada pi tiene un cliente (escrito en openframeworks) que gestiona la media que se esta proyectando (2 videos y un imagen fijo). el cliente tiene 2 canales y vamos mezclando usando el canal alpha. el pi de control habla con los 4 clientes via OSC, cambiando los media, los alpha, los plays etc el pi de control tiene una camera y será eso que va controlando la instalación, analizando si hay presencia o no en las areas definidas (mas adelante nos gustaría complejizar esta analisis para poder detectar movimientos circulares en el espacio pero ese es otro fase) - en este fase estamos simulando los datos de la camera con teclas - o sea, presencia en zona 1, tecla q, ausencia zona q tecla w, etc. el comportamiento deseado es eso: *presencia en z1 (tecla q) :* ch2 / pause video 1 ch1 / play video 2 ch1 / alpha video 2 de 0 a 255 en 1 segundo ch1 / fade in sound 0.1 → 1.0 , 1 segundo *ausencia en z1 (tecla w) :* ch1 / pause memoria - video 2 ch 2 / play video 1 ch 1 / alpha video 2 de 255 a 0 en 1 segundo ch1 / fade out sound 0.1 → 1.0 , 1 segundo estamos ahora trabajando con vuestras sugerencias :) bzzz El 11 de diciembre de 2015, 10:24, Miguel Vargas < [email protected]> escribió: > Pedro lo que te esta pasando es que entraste en una especie de vacio donde > el programa se queda sin hacer nada por que: > > 1. si es menor que 255 k++ y si es menor o igual a 255 k-- > > > (kx <= 255) ? kx++ : kx--; > > esta linea de codigo simplifica lo que tenes pero no lo soluciona debido a > el ultimo caso :), sin importar si el operador logico es < , o <=, va a > llegar un momento donde va a subir uno y de una bajar uno :).... el > condicional se va a cumplir en cada iteracion del codigo cuando la variable > alcance por primera vez se mayor o igual al umbral de color me > imagino?....... lo que me lleva a lo siguiente y reforzando un poco lo que > dice fabio, quieren conectar un slider o knob de alguna interfaz para > controlar unos alfas? o por lo que veo de primera en el codigo, generar > unas variables que se vayan moviendo -deltas-?.... si lo que quieren es > conectar un controlador midi o algo, aca la solucion es mapear el valor y > eso es breve, si lo que quieren es generarlas...entonces aca tambien te > tenes que preguntar un poco en definitiva que es controlar un alfa de un > video, que pasa cuando subo o lo bajo..... y vas a llegar a la conclucion > que el ejemplo de processing donde te muestran como rebotar un pelota > contra los bordes es a solucion... :).... > > > El alfa es el mismo solo que va en una direccion :)..... y si le agregas > velocidad tambien vas a tener intencion.... es decir: > > int direccion = 1; > > kx += velocidad*direccion > > (kx < 0 || kx > 255) ? direccion = -direccion; > > esto soluciona el asunto de ese vacio en el que esta entrando tu codigo y > ademas le agrega la posibilidad de esta intencioncilla de que tan rapido > quiero llegar a donde quiero llegar.... > > Miguel > > > > > 2015-12-11 9:38 GMT-05:00 Fabio Barone <[email protected]>: > >> yo no entiendo lo que quieren hacer, por eso me abstengo a darte una >> propuesta.... >> para que todas tus necesidades estén cubiertas, tendrías que especificar >> exactamente que quieres que haga el código :) >> si no te pasamos soluciones que en la próxima situación especial (que >> suba, que baje....) ya no funciona >> >> es que veo algunas cosas raras en ese código... >> - arriba (fadeIn = true), se incrementa kx mientras esté mas grande que >> 255, pero se pone fadeIn inmediatamente a false, así que solo hará el >> incremento una vez (a no ser que haya mucho mas código que en otro lugar >> pone ese fadeIn a true otra vez) >> - abajo eso no se hace, solo está fadeOut = true pero nunca se pone >> fadeOUt en false, alguna razón? >> - parece indicar que hay más código que hace más cosas que no nos has >> compartido >> - cuando subes a 255, llega el momento en que kx =255, *pero se >> incrementa una vez mas, *lo que lo hace incrementar a 256. Con 256, if ( >> kx<255) no aplica y kx se queda ahí >> - abajo, se está manipulando ky, que no es kx, entonces no sé cual numero >> es cual y porque son variables distintas. >> - si quieres que baje kx (ky ya está bajando), cuando llegue a 255 tienes >> que iniciar la inversión.....tendrías que tener una variable indicando que >> sube o que baja, y si es subiendo, kx++, si está bajando, kx-- >> >> >> >> 2015-12-10 20:05 GMT-05:00 pedro <[email protected]>: >> >>> >>> eio, va muy bien para subir a 255 pero tienes idea como bajar ? jejeje >>> >>> el codigo aqui salta directo !! >>> http://pastebin.com/4ba9sgnr >>> >>> abzzz >>> >>> >>> >>> >>> El 10 de diciembre de 2015, 13:53, pedro<[email protected]> escribió: >>> >>>> >>>> ---------- Mensaje reenviado ---------- >>>> De: brolin <[email protected]> >>>> Fecha: 10 de diciembre de 2015, 13:22 >>>> Asunto: Re: [un/loquer] ayudita con c++ / openframeworks >>>> Para: hackerspace medellin <[email protected]> >>>> >>>> >>>> Se me fue antes: >>>> >>>> Hola Pedro, >>>> >>>> podés crear una flag dentro del evento de la tecla como activado=true y >>>> dentro del update() hacer un condicional >>>> >>>> if(activado){ >>>> contador++; >>>> //manda mensaje osc >>>> } >>>> >>>> adicionalmente puedes poner un contador para que se active por cierto >>>> tiempo. >>>> >>>> if(contador == CIERTO_TIEMPO){ >>>> >>>> activado = false; >>>> contador = 0; >>>> } >>>> >>>> >>>> 2015-12-10 13:21 GMT-05:00 brolin <[email protected]>: >>>> >>>>> Hola Pedro, >>>>> >>>>> podés crear una flag dentro del evento de la tecla como activado=true >>>>> y dentro del update() hacer un condicional >>>>> >>>>> if(activado){ >>>>> >>>>> //manda mensaje osc >>>>> } >>>>> >>>>> adicionalmente puedes poner un contador para que se active por cierto >>>>> tiempo. >>>>> >>>>> if(contador == CIERTO_TIEMPO) >>>>> >>>>> 2015-12-10 12:57 GMT-05:00 pedro <[email protected]>: >>>>> >>>>>> >>>>>> hola amigxs >>>>>> >>>>>> aqui pedro soler ! >>>>>> >>>>>> estoy en quito trabajando en una instalación que se llama >>>>>> transmestizx - son 5 raspberry pis y 4 proyectores. un pi controla los >>>>>> otros 4. >>>>>> >>>>>> no logramos enviar un mensaje continuo de números por osc al >>>>>> presionar una tecla desde el pi de control a los otros ! eso es supa >>>>>> facil >>>>>> en PureData y Processing pero no sabemos hacerlo en C++ ... >>>>>> >>>>>> el problema es que solo se envía un valor al presionar la tecla. >>>>>> necesitamos que haga la cuenta de 0 a 255 en determinado tiempo >>>>>> es decir >>>>>> >>>>>> si esto es puesto dentro del void ofApp::update (); >>>>>> funciona >>>>>> >>>>>> pero al ponerlo dentro del void ofApp::keyReleased(int key) el >>>>>> mensaje solo envia un numero >>>>>> >>>>>> y solo es continuo si mantengo presionada la tecla >>>>>> >>>>>> todo el codigo >>>>>> >>>>>> http://pastebin.com/CqiKtaWc >>>>>> >>>>>> gracias !!! >>>>>> >>>>>> abzz >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Pedro Soler. http://root.ps. >>>>>> tel ecuador (+593) (0) 986855145 >>>>>> ***** >>>>>> <3 >>>>>> x >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> unloquer mailing list >>>>>> [email protected] >>>>>> https://lists.aktivix.org/mailman/listinfo/unloquer >>>>>> >>>>>> >>>>> >>>> >>>> _______________________________________________ >>>> unloquer mailing list >>>> [email protected] >>>> https://lists.aktivix.org/mailman/listinfo/unloquer >>>> >>>> >>>> >>>> >>>> -- >>>> Pedro Soler. http://root.ps. >>>> tel ecuador (+593) (0) 986855145 >>>> ***** >>>> <3 >>>> x >>>> >>>> >>>> >>>> >>> >>> >>> -- >>> <lost> >>> >>> >>> >>> -- >>> Pedro Soler. http://root.ps. >>> tel ecuador (+593) (0) 986855145 >>> ***** >>> <3 >>> x >>> >>> >>> >>> >>> _______________________________________________ >>> unloquer mailing list >>> [email protected] >>> https://lists.aktivix.org/mailman/listinfo/unloquer >>> >>> >> >> _______________________________________________ >> unloquer mailing list >> [email protected] >> https://lists.aktivix.org/mailman/listinfo/unloquer >> >> > > _______________________________________________ > unloquer mailing list > [email protected] > https://lists.aktivix.org/mailman/listinfo/unloquer > > -- Pedro Soler. http://root.ps. tel ecuador (+593) (0) 986855145 ***** <3 x
_______________________________________________ unloquer mailing list [email protected] https://lists.aktivix.org/mailman/listinfo/unloquer

