void testApp::keyPressed (int key){ switch(key) { case '1': fluidDrawer.setDrawMode(msa::fluid::kDrawColor); break; case '2': fluidDrawer.setDrawMode(msa::fluid::kDrawMotion); break; case '3': fluidDrawer.setDrawMode(msa::fluid::kDrawSpeed); break; case '4': fluidDrawer.setDrawMode(msa::fluid::kDrawVectors); break; case 'd': drawFluid ^= true; break; case 'p': drawParticles ^= true; break; case 'f': ofToggleFullscreen(); break; case 'r': fluidSolver.reset(); break; case 'x': xFactor /=1.01; cout<<"X : Y Factor: "<<xFactor<<" : "<<yFactor<<endl; break; case 'X': xFactor *= 1.01; cout<<"X : Y Factor: "<<xFactor<<" : "<<yFactor<<endl; break; case 'y': yFactor /=1.01; cout<<"X : Y Factor: "<<xFactor<<" : "<<yFactor<<endl; break; case 'Y': yFactor *=1.01; cout<<"X : Y Factor: "<<xFactor<<" : "<<yFactor<<endl; break; case 'i': myVideo->doDraw = !myVideo->doDraw; break; case 'b': { // Timer timer; // const int ITERS = 3000; // timer.start(); // for(int i = 0; i < ITERS; ++i) fluidSolver.update(); // timer.stop(); // cout << ITERS << " iterations took " << timer.getSeconds() << " seconds." << std::endl; } break; } }
//-------------------------------------------------------------- void testApp::keyPressed(int key) { if (key == 'F') { ofToggleFullscreen(); } }
//-------------------------------------------------------------- void testApp::keyPressed(int key) { switch (key) { case 's': arhelper.videoSettings(); break; case 'd': arhelper.toggleDebug(); break; case 'f': ofToggleFullscreen(); break; case ' ': gui.toggleDraw(); if (gui.isOn()) { ofShowCursor(); } else ofHideCursor(); break; case '[': gui.nextPage(); break; case ']': gui.prevPage(); break; case '`': gui.nextPageWithBlank(); break; /* case '=': scale+=scale*0.01f; for (int i = 0 ; i < numModels ; i ++) { models[i]->setScale(scale,scale,scale); } break; case '-': scale-=scale*0.01f; for (int i = 0 ; i < numModels ; i ++) { models[i]->setScale(scale,scale,scale); } break; case 'l': glEnable (GL_LIGHTING); break; case 'k': glDisable (GL_LIGHTING); break;*/ case 'm': arhelper.toggleMirror(); break; /*case 't': bMove = !bMove; unsigned delay = 0; unsigned duration = 1000; int target = 100; if (bMove)tweenlinear.setParameters(7,easinglinear,ofxTween::easeOut,0,target,duration,delay); else tweenlinear.setParameters(7,easinglinear,ofxTween::easeIn,target,0,duration,delay); break;*/ } }
//-------------------------------------------------------------- void testApp::keyPressed(int key) { if( key == 'f' ) { ofToggleFullscreen(); } if( key == 'w' ) { oculusRift.setDoWarping( !oculusRift.getDoWarping() ); } if ( key == 'd' ) { bDebug ^= true; } if ( key == OF_KEY_UP) { fov++; oculusRift.setFov(fov); // cout << "fov set -> " << fov << endl; } if ( key == OF_KEY_DOWN ) { fov--; oculusRift.setFov(fov); // cout << "fov set -> " << fov << endl; } if ( key == 's') { step++; } if (key == 'S') { step--; if (step < 1) step = 1; } if (key == OF_KEY_RIGHT) { zoom+=0.1; } if (key == OF_KEY_LEFT) { zoom-=0.1; } if (key == 'u') { bDrawUFO ^= true; } if (key == 'c') { colorMode++; colorMode%=4; } if (key == 'v') { vMode++; vMode%=3; } if (key == 'r') { fov = 90; step = 1; zoom = 1.2; } }
//-------------------------------------------------------------- void testApp::setup() { ofSetVerticalSync(true); ofSetLogLevel(OF_LOG_VERBOSE); // XML LOAD ------------------------------------------------* XML.loadFile("app_settings.xml"); // SET NUMBER OF MODULES HERE ------------------------------* XML.pushTag("all", 0); modIdx = XML.getValue("modIdx", 0, 0); filesPath = XML.getValue("filesPath", "", 0); XML.popTag(); // SET OSC HERE --------------------------------------------* XML.pushTag("all", 0); oscSendHost = XML.getValue("oscHost", "localhost", 0); oscSendPort = XML.getValue("oscPort", 8000, 0); oscListenPort = XML.getValue("oscListenPort", 8001 + modIdx, 0); oscMaxMessages = XML.getValue("oscMaxMessages", 20, 0); XML.popTag(); oscSender.setup(oscSendHost, oscSendPort); oscReceiver.setup(oscListenPort); messageStrings = new string [oscMaxMessages]; timers = new float [oscMaxMessages]; // SYNC bNeedToCheckIn = true; // MESSAGES ---------------------------------------------* ctrlMsg = new string[9]; ctrlMsg[ASK_CHECKIN] = "/ask/checkin"; ctrlMsg[RCV_CHECKIN] = "/rcv/checkin"; ctrlMsg[ASK_NEEDPLAY] = "/ask/needplay"; ctrlMsg[RCV_NEEDPLAY] = "/rcv/needplay"; ctrlMsg[ASK_PLAY] = "/ask/play"; ctrlMsg[RCV_ISPLAYING] = "/rcv/isPlaying"; ctrlMsg[ASK_SND_PLAY] = "/sound/play"; ctrlMsg[ASK_SHUTDOWN] = "/ask/quit"; ctrlMsg[ASK_SND_STOP] = "/sound/stop"; myMsg = new string[4]; myMsg[MOD_CHECKIN] = "/m" + ofToString(modIdx) + "/checkin"; myMsg[MOD_NEEDPLAY] = "/m" + ofToString(modIdx) + "/needPlay"; myMsg[MOD_ISPLAYING] = "/m" + ofToString(modIdx) + "/isPlaying"; myMsg[MOD_FPS] = "/m" + ofToString(modIdx) + "/FPS"; // DRAWING VARS --------------------------------------------* camWidth = 640; camHeight = 480; dispWidth = 1280; dispHeight = 720; ofSetWindowPosition(1280 * (modIdx+1), 0); ofToggleFullscreen(); // ---------------------------------------------------------* // MODULE INITIALIZATION -----------------------------------* module = new margModule[1]; XML.pushTag("module", 0); int capt = XML.getValue("captDev", -1, 0); string moviePath = XML.getValue("moviePath", filesPath + "movies/", 0); XML.popTag(); module[0].init(camWidth, camHeight, dispWidth, dispHeight, capt, modIdx, filesPath, moviePath, false); module[0].setSharedVarsAddresses(&minBlob, &maxBlob, &numBlob, &maxDist, &maxAreaDiff, &maxUnfitness, &blobDefScaleFactor, &blobCondScaleConst, &blobCondScaleMax, &exposureConst, &fadeConst, &blurLevel, &displayMode, &bDynInteractMode, &bDrawBlobs, &whichBlobs, &bAdjQuad, &whichQuad); texture.allocate(dispWidth, dispHeight, GL_RGB); unsigned char* blackPix = new unsigned char[dispWidth * dispHeight * 3]; for (int i = 0; i < dispWidth * dispHeight * 3; i++) { blackPix[i] = 0; } texture.loadData(blackPix, dispWidth, dispHeight, GL_RGB); delete[] blackPix; displayMode = 5; bDynInteractMode = true; bDrawBlobs = false; whichBlobs = 0; bAdjQuad = false; whichQuad = 0; bDrawUndistortBounds= false; module[0].interactMode = 2; bUpdateModule = false; bAwareNeedPlay= false; bIsPlaying = false; bGotPlay = false; // LOAD SETTINGS XML.clear(); XML.loadFile(filesPath + "Blob Detection_settings.xml"); XML.pushTag("controls", 0); XML.pushTag("SliderInt_Blob_Min_Area", 0); minBlob = XML.getValue("value", 0, 0); XML.popTag(); XML.pushTag("SliderInt_Blob_Max_Area", 0); maxBlob = XML.getValue("value", 100000, 0); XML.popTag(); XML.pushTag("SliderInt_Blob_Max_Number", 0); numBlob = XML.getValue("value", 4, 0); XML.popTag(); XML.pushTag("SliderFloat_Max_Area_Diff", 0); maxAreaDiff = XML.getValue("value", 10, 0); XML.popTag(); XML.pushTag("SliderFloat_Max_Dist", 0); maxDist = XML.getValue("value", 50, 0); XML.popTag(); XML.pushTag("SliderFloat_Def._Scale_Factor", 0); blobDefScaleFactor = XML.getValue("value", 1, 0); XML.popTag(); XML.pushTag("SliderFloat_Cond._Scale_Const.", 0); blobCondScaleConst = XML.getValue("value", 0.045, 0); XML.popTag(); XML.pushTag("SliderFloat_Cond._Scale_Max.", 0); blobCondScaleMax = XML.getValue("value", 2.225, 0); XML.popTag(); XML.pushTag("SliderFloat_Exp_Const", 0); exposureConst = XML.getValue("value", 1.2, 0); XML.popTag(); XML.pushTag("SliderFloat_Fade_Const", 0); fadeConst = XML.getValue("value", 0.97, 0); XML.popTag(); XML.pushTag("SliderInt_Blur_Level", 0); blurLevel = XML.getValue("value", 5, 0); XML.popTag(); XML.popTag(); XML.clear(); XML.loadFile(filesPath + "Capture " + ofToString(modIdx) + "_settings.xml"); XML.pushTag("controls", 0); XML.pushTag("SliderInt_Threshold_Min", 0); module[0].blobFindThreshMin = XML.getValue("value", 130, 0); XML.popTag(); XML.pushTag("SliderInt_Threshold_Max", 0); module[0].blobFindThreshMax = XML.getValue("value", 255, 0); XML.popTag(); XML.pushTag("SliderFloat_RadialDistX", 0); module[0].correctRdX = XML.getValue("value", 0.12, 0); XML.popTag(); XML.pushTag("SliderFloat_RadialDistY", 0); module[0].correctRdY = XML.getValue("value", 0.02, 0); XML.popTag(); XML.pushTag("SliderFloat_TangentDistX", 0); module[0].correctTgX = XML.getValue("value", 0.0, 0); XML.popTag(); XML.pushTag("SliderFloat_TangentDistY", 0); module[0].correctTgY = XML.getValue("value", 0.0, 0); XML.popTag(); XML.pushTag("SliderFloat_FocalX", 0); module[0].correctFX = XML.getValue("value", 320, 0); XML.popTag(); XML.pushTag("SliderFloat_FocalY", 0); module[0].correctFY = XML.getValue("value", 240, 0); XML.popTag(); XML.pushTag("SliderFloat_CenterX", 0); module[0].correctCX = XML.getValue("value", 320, 0); XML.popTag(); XML.pushTag("SliderFloat_CenterY", 0); module[0].correctCY = XML.getValue("value", 240, 0); XML.popTag(); XML.popTag(); module[0].updateSettings(); }
//-------------------------------------------------------------- void testApp::keyPressed(int key) { ofToggleFullscreen(); }
void ofApp::keyPressed(int key){ bool bAlt = (key == OF_KEY_ALT); // bool bShift = (key == OF_KEY_SHIFT); does not work? switch(key){ case OF_KEY_UP: if(!bAlt) sequence_thread.change_sleep_time_microsec(sequence_thread.sleep_microsec -= 1000); else sequence_thread.master_delay++; break; case OF_KEY_DOWN: if(!bAlt) sequence_thread.change_sleep_time_microsec(sequence_thread.sleep_microsec += 1000); else sequence_thread.master_delay++; break; // case OF_KEY_RIGHT: sequence_thread.change_freq( sequence_thread.freq+1 ); break; // case OF_KEY_LEFT: sequence_thread.change_freq( sequence_thread.freq-1 ); break; case '1': sequence_thread.change_bpm(100); break; case '2': sequence_thread.change_bpm(200); break; case '3': sequence_thread.change_bpm(300); break; case '4': sequence_thread.change_bpm(400); break; case '5': sequence_thread.change_bpm(500); break; case '6': sequence_thread.change_bpm(600); break; case '7': sequence_thread.change_bpm(700); break; case '8': sequence_thread.change_bpm(800); break; case '9': sequence_thread.change_bpm(900); break; case '0': sequence_thread.change_bpm(1000); break; // play case ' ': dt_config::DT_PLAY_GEN_RHYTHM = !dt_config::DT_PLAY_GEN_RHYTHM; config.synch_param(); break; case OF_KEY_TAB: osc_recorder.toggle_play_fragment(); config.synch_param(); break; case 'q': if(bAlt) all_containers.change_speed_random_all(1, 1); else dt_config::DT_BEAT_SPEED_MAX = 1; config.synch_param(); break; case 'w': if(bAlt) all_containers.change_speed_random_all(1, 4); else dt_config::DT_BEAT_SPEED_MAX = 4; config.synch_param(); break; case 'r': if(bAlt)all_containers.change_speed_random_all(1, 8); else dt_config::DT_BEAT_SPEED_MAX = 8; config.synch_param(); break; case 't': if(bAlt) all_containers.change_speed_random_all(1, 16); else dt_config::DT_BEAT_SPEED_MAX = 16; config.synch_param(); break; case 'y': if(bAlt) all_containers.change_speed_random_all(1, 32); else dt_config::DT_BEAT_SPEED_MAX = 32; config.synch_param(); break; case 'u': if(bAlt) all_containers.change_speed_random_all(1, 64); else dt_config::DT_BEAT_SPEED_MAX = 64; config.synch_param(); break; case 'i': if(bAlt) all_containers.change_speed_random_all(1, 128); else dt_config::DT_BEAT_SPEED_MAX = 128; config.synch_param(); break; case 'o': if(bAlt) all_containers.change_speed_random_all(1, 256); else dt_config::DT_BEAT_SPEED_MAX = 256; config.synch_param(); break; case 'p': if(bAlt) all_containers.change_speed_random_all(1, 512); else dt_config::DT_BEAT_SPEED_MAX = 512; config.synch_param(); break; case '@': if(bAlt) all_containers.change_speed_random_all(1, 1024); else dt_config::DT_BEAT_SPEED_MAX = 1024; config.synch_param(); break; case 'a': all_containers.change_beat_resolution_all(4); break; case 's': all_containers.change_beat_resolution_all(8); break; case 'd': all_containers.change_beat_resolution_all(16); break; case 'f': all_containers.change_beat_resolution_all(32); break; case 'g': all_containers.change_beat_resolution_all(64); break; case 'h': all_containers.change_beat_resolution_all(128); break; case 'j': all_containers.change_beat_resolution_all(256); break; case 'k': all_containers.change_beat_resolution_all(512); break; case 'l': all_containers.change_beat_resolution_all(1024); break; case 'L': dt_config::DT_SHOW_LINER_DRAWER = !dt_config::DT_SHOW_LINER_DRAWER; config.synch_param(); break; case 'G': config.toggle(); break; case 'F': ofToggleFullscreen(); break; case 'B': all_containers.change_beat_all(floor(ofRandom(dt_config::DT_RHYTHM_SHAPE_SLOT_MIN, dt_config::DT_RHYTHM_SHAPE_SLOT_MAX-1))); break; case 'P': all_containers.change_position_all(); break; case 'R': dt_config::DT_SHOW_BUFFERED_RHYTHM = !dt_config::DT_SHOW_BUFFERED_RHYTHM; config.synch_param(); break; case OF_KEY_RETURN: touch.make_random_circle(ofRandom(0, ofGetWidth()), ofRandom(0, ofGetHeight()), 100); break; default: break; } }
//-------------------------------------------------------------- void testApp::keyPressed(int key){ if(key == 'f') ofToggleFullscreen(); if(key == OF_KEY_UP) zoomTarget +=10; if(key == OF_KEY_DOWN) zoomTarget -=10; }
//-------------------------------------------------------------- void ofApp::keyPressed(int key){ // fキーでフルスクリーン表示 if (key == 'f') { ofToggleFullscreen(); } }
//-------------------------------------------------------------- void ofApp::keyPressed(int key){ switch(key) { case ' ': display_feedback = !display_feedback; break; case 'f': ofToggleFullscreen(); break; case 'v': b_learn_background = true; break; case 'V': background.set(0); break; case '=': threshold++; break; case '-': threshold--; break; case 'D': ripples.damping += 0.01; break; case 'd': ripples.damping -= 0.01; break; case 'M': min_contour_area+=10; break; case 'm': min_contour_area-=10; break; case OF_KEY_UP: dy--; break; case OF_KEY_DOWN: dy++; break; case OF_KEY_LEFT: dx--; break; case OF_KEY_RIGHT: dx++; break; case 'Z': dz += 0.01; break; case 'z': dz -= 0.01; break; case 'T': angle++; if(angle>30) angle=30; kinect.setCameraTiltAngle(angle); break; case 't': angle--; if(angle<-30) angle=-30; kinect.setCameraTiltAngle(angle); break; case 'r': bFreezeRed = !bFreezeRed; break; case 'g': bFreezeGreen = !bFreezeGreen; break; case 'b': bFreezeBlue = !bFreezeBlue; break; case 'j': beats.push_back(ofGetElapsedTimef()); if (beats.size() == 4) { bEvaluateTempo = true; } break; case '1': mode = 1; break; case '2': mode = 2; break; case '3': mode = 3; break; } }
//-------------------------------------------------------------- void ofApp::keyPressed(int key) { //# define OF_KEY_CTRL 0x0200 //# define OF_KEY_TAB 0x09 //# define OF_KEY_ALT 0x0300 //# define OF_KEY_SHIFT 0x0400 //# define OF_KEY_SHIFT 0x0400 /*-------------------------------------------------------------- Mutual --------------------------------------------------------------*/ //TAP -------------------------------------------------------------- if(key == OF_KEY_RETURN) { bpmTapper.tap(); bpmTapper.startFresh(); } //DEBUG -------------------------------------------------------------- if(key == OF_KEY_SHIFT) { debugFlag = !debugFlag; } //FULL SCREEN -------------------------------------------------------------- if(key == OF_KEY_ALT) { ofToggleFullscreen(); myFbo.allocate(ofGetWidth(),ofGetHeight()); } if(key == 'z') { bgMode = 0;//LINE } else if(key == 'x') { bgMode = 1;//HUMAN } else if(key == 'c') { bgMode = 2;//GIF } else if(key == 'v') { bgMode = 3;//PARTICLE } /*-------------------------------------------------------------- LINE --------------------------------------------------------------*/ if(!pdfFlag && bgMode==0 && (key == '1' || key == '2' || key == '3' || key == '4' || key == '5' || key == '6' || key == '7' || key == '8' || key == '9' || key == '0')) { if( key == '1' ) { line.setPattern(1); } else if( key == '2') { line.setPattern(2); } else if( key == '3') { line.setPattern(3); } else if( key == '4') { line.setPattern(4); } else if( key == '5') { line.setPattern(5); } else if( key == '6') { line.setPattern(6); } else if( key == '7') { line.setPattern(7); } else if( key == '8') { line.setPattern(8); } else if( key == '9') { line.setPattern(9); } else if( key == '0') { line.setPattern(0); } } if(!pdfFlag && bgMode==0 && key == OF_KEY_LEFT) { line.setDirection(false); } else if(!pdfFlag && bgMode==0 && key == OF_KEY_RIGHT) { line.setDirection(true); } if(!pdfFlag && bgMode==0 && key == OF_KEY_UP) { line.setNumber(true); } else if(!pdfFlag && bgMode==0 && key == OF_KEY_DOWN) { line.setNumber(false); } if(!pdfFlag && bgMode==0 && key == 'q') { line.setDraw(); } if(!pdfFlag && bgMode==0 && key == 'e') { line.changeColor(); } if(!pdfFlag && bgMode==0 && key == 'w') { line.changeFrame(); } /*-------------------------------------------------------------- Human --------------------------------------------------------------*/ if(!pdfFlag && bgMode==1 && key == 'q') { human.setDraw(); } if(!pdfFlag && bgMode==1 && (key == '1' || key == '2' || key == '3' || key == '4' || key == '5' || key == '6' || key == '7' || key == '8' || key == '9' || key == '0')) { if( key == '1' ) { human.setMode(1); // LINE } else if( key == '2') { human.setMode(2); //MASK } else if( key == '3') { human.setMode(3); } else if( key == '4') { human.setMode(4); } else if( key == '5') { human.setMode(5); } else if( key == '6') { human.setMode(6); } else if( key == '7') { human.setMode(7); } else if( key == '8') { human.setMode(8); } else if( key == '9') { human.setMode(9); } else if( key == '0') { human.setMode(0); } } if(!pdfFlag && bgMode==1 && key == OF_KEY_LEFT) { } else if(!pdfFlag && bgMode==1 && key == OF_KEY_RIGHT) { } if(!pdfFlag && bgMode==1 && key == OF_KEY_UP) { human.setNumberOfLine(true); } else if(!pdfFlag && bgMode==1 && key == OF_KEY_DOWN) { human.setNumberOfLine(false); } if(!pdfFlag && bgMode==1 && key == 'w') { human.setFillType(); } if(!pdfFlag && bgMode==1 && key == 'e') { human.stop(); } if(!pdfFlag && bgMode==1 && key == 'r') { human.play(); } /*-------------------------------------------------------------- Gif --------------------------------------------------------------*/ if(!pdfFlag && bgMode==2 && key == 'q') { gifs.setDraw(); } if(!pdfFlag && bgMode==2 && key == 'w') { gifs.stop(); } if(!pdfFlag && bgMode==2 && (key == '1' || key == '2' || key == '3' || key == '4' || key == '5' || key == '6' || key == '7' || key == '8' || key == '9' || key == '0')) { if( key == '1' ) { gifs.setPattern(1); } else if( key == '2') { gifs.setPattern(2); } else if( key == '3') { gifs.setPattern(3); } else if( key == '4') { gifs.setPattern(4); } else if( key == '5') { gifs.setPattern(5); } else if( key == '6') { gifs.setPattern(6); } else if( key == '7') { gifs.setPattern(7); } else if( key == '8') { gifs.setPattern(8); } else if( key == '9') { gifs.setPattern(9); } else if( key == '0') { gifs.setPattern(0); } } if(!pdfFlag && bgMode==2 && key == OF_KEY_LEFT) { gifs.addColumn(false); } else if(!pdfFlag && bgMode==2 && key == OF_KEY_RIGHT) { gifs.addColumn(true); } if(!pdfFlag && bgMode==2 && key == OF_KEY_UP) { gifs.addRow(true); } else if(!pdfFlag && bgMode==2 && key == OF_KEY_DOWN) { gifs.addRow(false); } /*-------------------------------------------------------------- Tracing Particles --------------------------------------------------------------*/ if(!pdfFlag && bgMode==3 && (key == '1' || key == '2' || key == '3' || key == '4' || key == '5' || key == '6' || key == '7' || key == '8' || key == '9' || key == '0')) { if( key == '1' ) { tp.setImage(0); } else if( key == '2') { tp.setImage(1); } else if( key == '3') { tp.setImage(2); } else if( key == '4') { tp.setImage(3); } else if( key == '5') { tp.setImage(4); } else if( key == '6') { tp.setImage(5); } else if( key == '7') { tp.setImage(6); } else if( key == '8') { tp.setImage(7); } else if( key == '9') { tp.setImage(8); } else if( key == '0') { tp.setImage(9); } } if(!pdfFlag && bgMode==3 && key == 'q') { tp.setMaxScale(false); } else if(!pdfFlag && bgMode==3 && key == 'w') { tp.setMaxScale(true); } else if(!pdfFlag && bgMode==3 && key == 'e') { tp.changeBackground(); } else if(!pdfFlag && bgMode==3 && key == 'r') { tp.changeSoundEffect(); } if(!pdfFlag && bgMode==3 && key == OF_KEY_LEFT) { tp.setSpeed(true); } else if(!pdfFlag && bgMode==3 && key == OF_KEY_RIGHT) { tp.setSpeed(false); } if(!pdfFlag && bgMode==3 && key == OF_KEY_UP) { tp.setRange(true); } else if(!pdfFlag && bgMode==3 && key == OF_KEY_DOWN) { tp.setRange(false); } /*-------------------------------------------------------------- Locus --------------------------------------------------------------*/ if(key == '-') locus.setAlpha(false); if(key == '=') locus.setAlpha(true); /*-------------------------------------------------------------- Shader --------------------------------------------------------------*/ if (key == 'a') myGlitch.setFx(OFXPOSTGLITCH_CONVERGENCE, true); if (key == 's') myGlitch.setFx(OFXPOSTGLITCH_GLOW, true); if (key == 'd') myGlitch.setFx(OFXPOSTGLITCH_SHAKER, true); if (key == 'f') myGlitch.setFx(OFXPOSTGLITCH_CUTSLIDER, true); if (key == 'g') myGlitch.setFx(OFXPOSTGLITCH_TWIST, true); if (key == 'h') myGlitch.setFx(OFXPOSTGLITCH_OUTLINE, true); if (key == 'j') myGlitch.setFx(OFXPOSTGLITCH_NOISE, true); if (key == 'k') myGlitch.setFx(OFXPOSTGLITCH_SLITSCAN, true); if (key == 'l') myGlitch.setFx(OFXPOSTGLITCH_SWELL, true); if (key == ';') myGlitch.setFx(OFXPOSTGLITCH_INVERT, true); if (key == '\'') myGlitch.setFx(OFXPOSTGLITCH_CR_HIGHCONTRAST, true); if (key == '\\') myGlitch.setFx(OFXPOSTGLITCH_CR_BLUERAISE, true); if (key == ']') myGlitch.setFx(OFXPOSTGLITCH_CR_REDRAISE, true); if (key == '[') myGlitch.setFx(OFXPOSTGLITCH_CR_GREENRAISE, true); if (key == 'p') myGlitch.setFx(OFXPOSTGLITCH_CR_BLUEINVERT, true); if (key == 'o') myGlitch.setFx(OFXPOSTGLITCH_CR_REDINVERT, true); if (key == 'i') myGlitch.setFx(OFXPOSTGLITCH_CR_GREENINVERT, true); if (key == 'u') myGlitch.setFx(OFXPOSTGLITCH_KIRAKIRA, true); /*-------------------------------------------------------------- PDF --------------------------------------------------------------*/ if(key == ' ') { pdfFlag = true; } if(pdfFlag && key == '`' ) { pdf.setPdfNum(1, true); } else if(pdfFlag && key == '1') { pdf.setPdfNum(2, true); } else if(pdfFlag && key == '2') { pdf.setPdfNum(3, true); } else if(pdfFlag && key == '3') { pdf.setPdfNum(4, true); } else if(pdfFlag && key == '4') { pdf.setPdfNum(5, true); } else if(pdfFlag && key == '5') { pdf.setPdfNum(6, true); } else if(pdfFlag && key == '6') { pdf.setPdfNum(7, true); } else if(pdfFlag && key == '7') { pdf.setPdfNum(8, true); } else if(pdfFlag && key == '8') { pdf.setPdfNum(9, true); } //pdfMode if(pdfFlag && key == '9' ) { pdf.setDisplayOriginal(); } if(pdfFlag && key == '0' ) { pdf.setDisplayOutline(); } if(pdfFlag && key == '-' ) { pdf.setDisplayStep(); } if(pdfFlag && key == '=' ) { pdf.setRotatePattern(); } //PDF Sound Limitation if(pdfFlag && key == OF_KEY_LEFT) { pdf.setMaxSound(false); } else if(pdfFlag && key == OF_KEY_RIGHT) { pdf.setMaxSound(true); } //PDF Max Expand Rate if(pdfFlag && key == OF_KEY_UP) { pdf.setMaxSize(true); } else if(pdfFlag && key == OF_KEY_DOWN) { pdf.setMaxSize(false); } }
//-------------------------------------------------------------- void ofApp::keyPressed(int key){ if (key == 'f') { ofToggleFullscreen(); } if (key == OF_KEY_UP) { model.setRotation(0,degree,1,0,0); } if (key == OF_KEY_DOWN) { model.setRotation(0,-degree,1,0,0); } if (key == OF_KEY_RIGHT) { model.setRotation(0,degree,0,1,0); } if (key == OF_KEY_LEFT) { model.setRotation(0,-degree,0,1,0); } switch (key) { case ' ': kinect.init(); kinect.open(); break; } //キー入力でモード切り替え switch (key){ case '0': //カラー映像表示 videoMode = 0; break; case '1': //グレースケール映像表示 videoMode = 1; break; case '2': //背景画像表示 videoMode = 2; break; case '3': //2値化した差分映像 videoMode = 3; break; case 'a': //解析結果の表示の on / off showCvAnalysis ? showCvAnalysis=false : showCvAnalysis=true; break; case 'f': //フルスクリーンに ofSetFullscreen(true); break; case ' ': //背景画像を新規に取り込む bLearnBakground = true; break; case '+': //2値化の閾値を増加 threshold ++; if (threshold > 255) threshold = 255; break; case '-': //2値化の閾値を減少 threshold --; if (threshold < 0) threshold = 0; break; } }
void testApp::keyPressed(int key){ if(key==' ')ofToggleFullscreen(); nextLevel(); }
void ofApp::keyPressed(int key) { if (key == 'f') ofToggleFullscreen(); }
//-------------------------------------------------------------- void testApp::keyPressed(int key){ if (key == 'f') ofToggleFullscreen(); if (key == 's') decoder.saveDataSet(); }
//-------------------------------------------------------------- void testApp::keyPressed (int key){ switch(key) { case ' ': gui.toggleDraw(); glClear(GL_COLOR_BUFFER_BIT); break; case 'f': ofToggleFullscreen(); break; case 'p': static char fileNameStr[255]; sprintf(fileNameStr, "output_%0.4i.png", ofGetFrameNum()); static ofImage imgScreen; imgScreen.grabScreen(0, 0, ofGetWidth(), ofGetHeight()); printf("Saving file: %s\n", fileNameStr); imgScreen.saveImage(fileNameStr); break; case 'q': if (smurfFloor->getBPM() <= 295) { // really quicken the beat // In my case just got the griffin knob linked to this smurfFloor->setBPM(smurfFloor->getBPM()+5); } break; case 's': if (smurfFloor->getBPM() > 5 ) { // really slow down the beat // In my case just got the griffin knob linked to this smurfFloor->setBPM(smurfFloor->getBPM()-5); } break; case 'a': if (smurfFloor->getBPM() <= 299) { // quicken the beat // In my case just got the griffin knob linked to this smurfFloor->setBPM(smurfFloor->getBPM()+1); } break; case 'z': if (smurfFloor->getBPM() > 1) { // slow down the beat // In my case just got the griffin knob linked to this smurfFloor->setBPM(smurfFloor->getBPM()-1); } break; case 'h': // help smurfFloor->setVerbose(smurfFloor->isVerbose()?false:true); break; #ifdef TARGET_OS_MAC case 'g': // gesture smurfFloor->toggleGesture(); break; #endif case 'c': // gesture smurfFloor->toggleConnectionMode(); break; case 'w': // wave if (smurfFloor->getWaveSpeed() > 1) { smurfFloor->setWaveSpeed(smurfFloor->getWaveSpeed()-1); } break; case 'x': // wave if (smurfFloor->getWaveSpeed() <= 20) { smurfFloor->setWaveSpeed(smurfFloor->getWaveSpeed()+1); } break; } }
//-------------------------------------------------------------- void testApp::keyPressed(int key) { if(key == 't') ofToggleFullscreen(); if(key == '1') box2d.enableEvents(); if(key == '2') box2d.disableEvents(); }
void testApp::keyPressed(int key){ cam.setPosition(0,0,500); cam.lookAt(ofVec3f(0,0,0)); if (key == 'f') { ofToggleFullscreen(); } /* if (key == 'c') { gui.toggleView(); if (gui.hidden) { ofHideCursor(); } else { ofShowCursor(); } } */ if (key == '0') { mode = 0; } if (key == '1') { mode = 1; } if (key == '2') { mode = 2; } if (key == '3') { mode = 3; } if (key == '4') { mode = 4; fftTracer->resetCam(); } if (key == '5') { mode = 5; } if (key == '6') { mode = 6; //fftFnwrGlitch->resetCam(); } if (key == '7') { mode = 7; } if (key == '8') { mode = 8; } if (key == '9') { mode = 9; } if (key == '-') { audioLevel /= 1.2; } if (key == '=') { audioLevel *= 1.2; } /* if (key == 'q') { post[0]->setEnabled(!post[0]->getEnabled()); } if (key == 'w') { post[1]->setEnabled(!post[1]->getEnabled()); } if (key == 'e') { post[2]->setEnabled(!post[2]->getEnabled()); } if (key == 'r') { post[3]->setEnabled(!post[3]->getEnabled()); } if (key == 't') { post[4]->setEnabled(!post[4]->getEnabled()); } if (key == 'y') { post[5]->setEnabled(!post[5]->getEnabled()); } if (key == 'u') { post[6]->setEnabled(!post[6]->getEnabled()); } */ if (key == ' ') { if (mode == 4) { fftTracer->keyPressed(key); } if (mode == 6) { fftFnwrGlitch->keyPressed(key); } } if (mode == 8) { fftGrid->keyPressed(key); } }
//---------------------------------------------------------------------- void game::guiInput(int in){ //any gui input resets reset timer //start timer to go back to inactive state if(step != -1){ goToAttractStepI = ofGetElapsedTimef(); } if(in == 'b'){ ofToggleFullscreen(); } ////// if(step == -1){ //on attract / inactive state step = 0; goToAttractStepI = ofGetElapsedTimef(); } ////////////////////////////////////////////step 0 inputs ////////////////////////////////////////////step 0 inputs ////////////////////////////////////////////step 0 inputs else if(step == 0){ //waiting for an object to be selected //it cam be from the shapes on the center // or from the object menu on the side //////////////////////////////////////////////////////// //////////////////object menu on the side //waiting for shape to be selected if(in == '1') { //load object recieves (object id, boolean position, display position) loadObject(1,slicingPos,posP); } if(in == '2') { loadObject(2,slicingPos,posP); } if(in == '3') { loadObject(3,slicingPos,posP); } if(in == '4') { loadObject(4,slicingPos,posP); } if(in == '5') { loadObject(5,slicingPos,posP); } if(in == '6') { loadObject(6,slicingPos,posP); } if(in == '7') { loadObject(7,slicingPos,posP); } //if(in == '8') { // loadObject(8,objectPos,posP); //} if(in == '9') { prepareDrawing(); } } ////////////////////////////////////////////step 1 inputs ////////////////////////////////////////////step 1 inputs ////////////////////////////////////////////step 1 inputs else if(step == 1){ //is showing object with flat color //selected an object if(in == 'n') { //go to step 2 setCurrentStep(2); //show armature } else{ //waiting for shape to be selected if(in == '1') { //user can change the selected object clearDisplayedObject(); //load object recieves (object id, boolean position, display position) loadObject(1,slicingPos,posP); //pos.z its the torus radious } if(in == '2') { clearDisplayedObject(); loadObject(2,slicingPos,posP); } if(in == '3') { clearDisplayedObject(); loadObject(3,slicingPos,posP); } if(in == '4') { clearDisplayedObject(); loadObject(4,slicingPos,posP); } if(in == '5') { clearDisplayedObject(); loadObject(5,slicingPos,posP); } if(in == '6') { //user can change the selected object clearDisplayedObject(); loadObject(6,slicingPos,posP); } if(in == '7') { //user can change the selected object clearDisplayedObject(); loadObject(7,slicingPos,posP); } /*if(in == '8') { loadObject(8,objectPos,posP); }*/ if(in == '9') { clearDisplayedObject(); prepareDrawing(); } } } ////////////////////////////////////////////step 2 inputs ////////////////////////////////////////////step 2 inputs ////////////////////////////////////////////step 2 inputs else if(step == 2){ //waiting for armature to be selected if(in == '1') { //select armature 1 loadArmature(1); } if(in == '2') { //select armature 2 loadArmature(2); } } ////////////////////////////////////////////step 3 inputs ////////////////////////////////////////////step 3 inputs ////////////////////////////////////////////step 3 inputs else if(step == 3){ //armature was selected ////showing armature another armature can be selected if(in == '1') { //select armature 1 loadArmature(1); } if(in == '2') { //select armature 2 loadArmature(2); } //////////////////////////////move all armature if(in == 'l') { ofVec3f p = ofVec3f (5,0,0); moveA(p); } if(in == 'j') { ofVec3f p = ofVec3f (-5,0,0); moveA(p); } if(in == 'i') { ofVec3f p = ofVec3f (0,-5,0); moveA(p); } if(in == 'k') { ofVec3f p = ofVec3f (0,5,0); moveA(p); } ///z movement if(in == 'o') { ofVec3f p = ofVec3f (0,0,5); moveA(p); } if(in == 'p') { ofVec3f p = ofVec3f (0,0,-5); moveA(p); }//////////////////////////////rotate all armature if(in == 'c') {//rotate around y ofVec3f r = ofVec3f (0,5,0); rotateA(r); } if(in == 'x') {//rotate around y ofVec3f r = ofVec3f (0,-5,0); rotateA(r); } if(in == 'w') {//rotate around x ofVec3f r = ofVec3f (5,0,0); //degrees!!! rotateA(r); } if(in == 's') {//rotate around x ofVec3f r = ofVec3f (-5,0,0); rotateA(r); } if(in == 'e') {//rotate around z ofVec3f r = ofVec3f (0,0,5); //degrees!!! rotateA(r); } if(in == 'd') {//rotate around z ofVec3f r = ofVec3f (0,0,-5); rotateA(r); } /////////////////a puzzle can be made if(in == 'n') { //send the armature rotations to the 3dObject applyArmRotations(); //now we know the offset position from the armature to create-> cutter & slicer createCutterSlicer(); //do slicing createPuzzle(posP);//create Puzzle goes to step 4 to show the puzzle } } ////////////////////////////////////////////step 4 inputs ////////////////////////////////////////////step 4 inputs ////////////////////////////////////////////step 4 inputs else if(step == 4){ //showing puzzle with colors //waiting for color change if(in == '1') { //call color change funtion ofFloatColor sc = ofFloatColor (1, 1, 0); //yellow ofFloatColor menuColor = ofFloatColor (1, 0, 1); //this color comes from the GUI changeColorToColor(sc,menuColor); } //pressed NEXT if(in == 'n') { //go to step 5 setCurrentStep(5); } ///////////////////////////////move all puzzle if(in == 'l') { SG_VECTOR p = {10,0,0}; moveP(p); } if(in == 'j') { SG_VECTOR p = {-10,0,0}; moveP(p); } if(in == 'i') { SG_VECTOR p = {0,-10,0}; moveP(p); } if(in == 'k') { SG_VECTOR p = {0,10,0}; moveP(p); } /////////////rotate all puzzle // two finger swipe gesture //if(in == 'm') {//rotate right // SG_VECTOR r = {0,10,0};//{0,0.1,0}; // rotateP(r); //} //if(in == 'n') {//rotate left // SG_VECTOR r = {0,-10,0};//{0,-0.1,0}; // rotateP(r); //} //if(in == 'y') {//rotate up // SG_VECTOR r = {10,0,0};// {0.1,0,0}; // rotateP(r); //} //if(in == 'h') {//rotate down // SG_VECTOR r = {-10,0,0};//{-0.1,0,0}; // ofVec3f v; // rotateP(r); //} } ////////////////////////////////////////////step 5 inputs ////////////////////////////////////////////step 5 inputs ////////////////////////////////////////////step 5 inputs else if(step == 5){ //selected color (or not, its not mandatory) //pressed next on color palette step //showing puzzle //now the puzzle can be played with int randcubie=13;//rand()%26;//to follow this cubie for now //this will be decided upon touch, or click on top of puzzle if(myPuzzle->isMoving() == false){ //this is to prevent from reading events while puzzle is moving if(in == 'u'){ //undo last move unDo(); } ////////////////////////////////////////////// FACE ROTATIONS ////////////////////////////// if(in == 'z') { //do rotationbased ontwo cubies id int cubieA = 11; int cubieB = 10; rotateTwoIds(cubieA,cubieB,true); } ////////////////////////////////////////////// FACE ROTATIONS ////////////////////////////// //////// x axis //// x axis if(in == 'q') { //clockwise SG_VECTOR axis = {1,0,0}; rotateByIDandAxis(randcubie,axis,true); } if(in == 'a') { //counter clockwise SG_VECTOR axis = {1,0,0}; rotateByIDandAxis(randcubie,axis,false); } //////// y axis //// y axis if(in == 'w') { //clockwise SG_VECTOR axis = {0,1,0}; rotateByIDandAxis(randcubie,axis,true); }if(in == 's') { //counter clockwise SG_VECTOR axis = {0,1,0}; rotateByIDandAxis(randcubie,axis,false); } //////// z axis //// z axis if(in == 'e') { //clockwise SG_VECTOR axis = {0,0,1}; rotateByIDandAxis(randcubie,axis,true); }if(in == 'd') { //counter clockwise SG_VECTOR axis = {0,0,1}; rotateByIDandAxis(randcubie,axis,false); } } ////////////////////////////////////move all puzzle if(in == 'l') { SG_VECTOR p = {10,0,0}; moveP(p); } if(in == 'j') { SG_VECTOR p = {-10,0,0}; moveP(p); } if(in == 'i') { SG_VECTOR p = {0,-10,0}; moveP(p); } if(in == 'k') { SG_VECTOR p = {0,10,0}; moveP(p); } /////////////rotate all puzzle // two finger swipe gesture //if(in == 'm') {//rotate right // SG_VECTOR r = {0,2,0};//{0,0.1,0}; // rotateP(r); //} //if(in == 'n') {//rotate left // SG_VECTOR r = {0,-2,0};//{0,-0.1,0}; // rotateP(r); //} //if(in == 'y') {//rotate up // SG_VECTOR r = {2,0,0};// {0.1,0,0}; // rotateP(r); //} //if(in == 'h') {//rotate down // SG_VECTOR r = {-2,0,0};//{-0.1,0,0}; // ofVec3f v; // rotateP(r); //} //if(in == 'o') {//rotate c // SG_VECTOR r = {0,0,-2};// {0.1,0,0}; // rotateP(r); //} //if(in == 'p') {//rotate cc // SG_VECTOR r = {0,0,2};//{-0.1,0,0}; // ofVec3f v; // rotateP(r); //} }else if(step == 6){ ////////////////////////////extrusion if(in == 'e') { //take drawing data //check for existing drawing if(myCanvas->drawingExists()){ //make extruded object if(extrudeObject(myCanvas->getPolyline())){ }else{ prepareDrawing(); } } }else if(in == 's'){ ofPolyline *draw = new ofPolyline(); //star draw->addVertex(ofVec2f(-5,-210)); draw->addVertex(ofVec2f(60,-60)); draw->addVertex(ofVec2f(210,-45)); draw->addVertex(ofVec2f(105,60)); draw->addVertex(ofVec2f(150,210)); draw->addVertex(ofVec2f(-5,135)); draw->addVertex(ofVec2f(-150,210)); draw->addVertex(ofVec2f(-105,60)); draw->addVertex(ofVec2f(-210,-45)); draw->addVertex(ofVec2f(-60,-60)); draw->addVertex(ofVec2f(-5,-210)); //draw->close(); // close the shape extrudeObject(draw); } //////////////////////////////////////////////////////// //////////////////object menu on the side //waiting for shape to be selected else if(in == '1') { clearDisplayedObject(); //load object recieves (object id, boolean position, display position) loadObject(1,slicingPos,posP); } else if(in == '2') { clearDisplayedObject(); loadObject(2,slicingPos,posP); } else if(in == '3') { clearDisplayedObject(); loadObject(3,slicingPos,posP); } else if(in == '4') { clearDisplayedObject(); loadObject(4,slicingPos,posP); } else if(in == '5') { clearDisplayedObject(); loadObject(5,slicingPos,posP); } else if(in == '6') { clearDisplayedObject(); loadObject(6,slicingPos,posP); } else if(in == '7') { clearDisplayedObject(); loadObject(7,slicingPos,posP); } //if(in == '8') { // loadObject(8,objectPos,posP); //} else if(in == '9') { clearDisplayedObject(); prepareDrawing(); } } ///////////////////////////////////////////////////////////////// ////////////////RESART button can work on any step, its not showed on step 1 (object selected) if(in == 'r'){ //tell a game to restart restart(); } }
void keyPressed(int key) { if(key == 'f') { ofToggleFullscreen(); } }
//-------------------------------------------------------------- void testApp::keyPressed(int key){ int swap = ofMap(key, 48, 57, 0, 9); if((swap <= 9)&&(swap >= 0)){ if(swap < maxNumber){ for(int i = 0; i < maxNumber; i++){ mapping[i]->deactivate(); } mapping[swap]->activate(); swapGloble = swap; } } switch (key) { case 's': save(); break; case 'l': loadMe(); break; case 'f': CGDisplayHideCursor(kCGDirectMainDisplay); ofToggleFullscreen(); break; case ' ': if(debug == 0){ debug = 1; } else{ debug = 0; } for(int i = 0; i < maxNumber; i++){ mapping[i]->debugSet(debug); } break; case 13: maxNumber ++; mapping[maxNumber-1] = new ofxQuad(); vid.push_back(ofVideoPlayer()); vid[maxNumber-1].loadMovie(dir.getPath(0)); width = vid[maxNumber-1].getWidth() * (maxNumber-hozpertion); if((width + vid[maxNumber-1].getWidth()) > ofGetWidth() ){ hozpertion = maxNumber + 1; height += vid[maxNumber-1].getHeight(); width = 10; } mapping[maxNumber-1]->setup(width+10,10+height, 200, 200, ofGetWidth(), ofGetHeight(),maxNumber-1); mapping[maxNumber-1]->deactivate(); vid[maxNumber-1].play(); mapping[maxNumber-1]->debugSet(0); break; case 357: if( load >=(int)dir.size()-1){ load = 0; } else{ load += 1; } vid[swapGloble].loadMovie(dir.getPath(load)); break; case 359: if( load <=0){ load = (int)dir.size()-1; } else{ load -= 1; } vid[swapGloble].loadMovie(dir.getPath(load)); break; default: break; } // cout << " me first " << endl; }
//-------------------------------------------------------------- void testApp::keyReleased(int key){ if(key=='f'){ ofToggleFullscreen(); } }