// --------------------------------------------------------------------- // P5OscListener1: // changes background color according to incoming osc message // --------------------------------------------------------------------- // for OSC functionality import oscP5.*; // OSC listener OscP5 oscP5; // globals for incoming values PImage[] myImages; PImage back; int myIdx = 0; int myTrans = 0; void setup() { size(800, 600); back = loadImage( "21.jpg"); back.resize(800, 600); myImages = new PImage[36]; for ( int i = 0; i < 36; i++ ) { PImage p = loadImage( (i+1) + ".jpg" ); p.resize( width, height ); myImages[i] = p; } oscP5 = new OscP5(this, 8889); } void draw() { background( back); drawImage( myIdx, myTrans ); } void drawImage( int idx, float transparency ) { tint(255, transparency); image( myImages[idx], 0, 0); } // OSC message parser void oscEvent( OscMessage m ) { // if the tag is "220a", then get data inside if ( m.checkAddrPattern( "/220a" ) == true ) { // check typetags if ( m.checkTypetag( "ii" ) ) { // get values myIdx = m.get(0).intValue(); myTrans = m.get(1).intValue(); } } }