summaryrefslogtreecommitdiff
path: root/liveengine/src/testApp.cpp
diff options
context:
space:
mode:
authorTim Redfern <tim@eclectronics.org>2012-08-16 16:51:19 +0100
committerTim Redfern <tim@eclectronics.org>2012-08-16 16:51:19 +0100
commit7edbb64e6fb9ee4e3f449d8d168f3aa94fb6ec4d (patch)
tree8840ebacf45bda209a7a3d1f91ad8192bca4e174 /liveengine/src/testApp.cpp
parentb3548f90171f0be1ebfd7020f38f3d0acec65f8b (diff)
simple vis
Diffstat (limited to 'liveengine/src/testApp.cpp')
-rwxr-xr-xliveengine/src/testApp.cpp38
1 files changed, 31 insertions, 7 deletions
diff --git a/liveengine/src/testApp.cpp b/liveengine/src/testApp.cpp
index 9ecb92f..86bbad6 100755
--- a/liveengine/src/testApp.cpp
+++ b/liveengine/src/testApp.cpp
@@ -54,7 +54,18 @@ void testApp::setup(){
// midiIn.addListener(84,this);
// to debug
- // midiIn.setVerbose(true);
+ // midiIn.setVerbose(true);
+
+ controllers=new unsigned char[NUM_CONTROLLERS];
+ memset(controllers,NUM_CONTROLLERS,0);
+ note=START_NOTE;
+
+ controller_colours=new ofColor[NUM_CONTROLLERS];
+ for (int i=0;i<NUM_CONTROLLERS;i++) controller_colours[i]=ofColor::fromHsb(ofRandom(255), 255, 255);
+
+ grab.allocate(ofGetWidth(), ofGetHeight(),OF_IMAGE_COLOR);
+ grab.setUseTexture(true);
+
showFPS=false;
}
@@ -65,10 +76,21 @@ void testApp::update(){
//--------------------------------------------------------------
void testApp::draw(){
- ofBackground(0,0,0);
+ grab.grabScreen( 0, 0, ofGetWidth(), ofGetHeight() );
+ grab.update();
+ ofBackground(0,0,0);
+ grab.draw( 1,1,ofGetWidth(), ofGetHeight());
+
+ float notewidth=ofGetWidth()/NUM_NOTES;
+ float noteheight=ofGetHeight()/NUM_CONTROLLERS;
+
+ for (int i=0;i<NUM_CONTROLLERS;i++){
+ ofSetColor(ofColor((controller_colours[i].r*controllers[i])>>7,(controller_colours[i].g*controllers[i])>>7,(controller_colours[i].b*controllers[i])>>7));
+ ofRect(note*notewidth,i*noteheight,notewidth,noteheight);
+ }
//for (int i=0;i<numLayers;i++) layers[i]->draw();
-
+ ofSetColor(255,255,255);
if (showFPS) ofDrawBitmapString(ofToString(ofGetFrameRate(), 2),20,20);
}
@@ -147,18 +169,20 @@ void testApp::newMidiMessage(ofxMidiEventArgs& eventArgs){
if ((midiChannel==0)||(eventArgs.channel==midiChannel)) {
switch(eventArgs.status) {
- case 144: //noteon-off
+ case 144: //noteon-off channel 0
noteOn=(eventArgs.byteTwo==0?false:true);
//for (int i=0;i<numLayers;i++){
// if (layers[i]->note==eventArgs.byteOne) layers[i]->setActive(noteOn);
//}
- printf("note: %i %i\n",eventArgs.byteOne,eventArgs.byteTwo);
+ printf("note: %i %i\n",eventArgs.byteOne,eventArgs.byteTwo);
+ note=eventArgs.byteOne-START_NOTE;
break;
- case 176: //control change
+ case 176: //control change channel 0
//for (int i=0;i<numLayers;i++){
// if (layers[i]->mix==eventArgs.byteOne) layers[i]->setMixAmt(((float)eventArgs.byteTwo)/127.0f);
//}
- printf("cc: %i %i\ n",eventArgs.byteOne,eventArgs.byteTwo);
+ printf("cc: %i %i\n",eventArgs.byteOne,eventArgs.byteTwo);
+ controllers[eventArgs.byteOne-START_CONTROLLER]=eventArgs.byteTwo;
}
}
}