Пример #1
0
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;
			
    }
}
Пример #2
0
//--------------------------------------------------------------
void testApp::keyPressed(int key) {
    if (key == 'F') {
        ofToggleFullscreen();
    }
}
Пример #3
0
//--------------------------------------------------------------
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;*/
    }
}
Пример #4
0
//--------------------------------------------------------------
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;
    }
}
Пример #5
0
//--------------------------------------------------------------
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();

}
Пример #6
0
//--------------------------------------------------------------
void testApp::keyPressed(int key) {
    ofToggleFullscreen();
}
Пример #7
0
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;
	}
}
Пример #8
0
//--------------------------------------------------------------
void testApp::keyPressed(int key){
	
	if(key == 'f') ofToggleFullscreen();
	if(key == OF_KEY_UP) zoomTarget +=10;
	if(key == OF_KEY_DOWN) zoomTarget -=10;
}
Пример #9
0
//--------------------------------------------------------------
void ofApp::keyPressed(int key){
    // fキーでフルスクリーン表示
    if (key == 'f') {
        ofToggleFullscreen();
    }
}
Пример #10
0
//--------------------------------------------------------------
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;
    }
}
Пример #11
0
//--------------------------------------------------------------
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);
    }
}
Пример #12
0
//--------------------------------------------------------------
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;
    }
}
Пример #13
0
void testApp::keyPressed(int key){

	if(key==' ')ofToggleFullscreen();
		
	nextLevel();
}
Пример #14
0
void ofApp::keyPressed(int key)
{
    if (key == 'f') ofToggleFullscreen();
}
//--------------------------------------------------------------
void testApp::keyPressed(int key){
	if (key == 'f')
		ofToggleFullscreen();
	if (key == 's')
		decoder.saveDataSet();
}
Пример #16
0
//--------------------------------------------------------------
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;
    }
}
Пример #17
0
//--------------------------------------------------------------
void testApp::keyPressed(int key) {
	if(key == 't') ofToggleFullscreen();
    if(key == '1') box2d.enableEvents();
    if(key == '2') box2d.disableEvents();
    
}
Пример #18
0
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);
    }
}
Пример #19
0
//----------------------------------------------------------------------
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();
	}
}
Пример #20
0
	void keyPressed(int key) {
		if(key == 'f') {
			ofToggleFullscreen();
		}
	}
Пример #21
0
//--------------------------------------------------------------
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;
}
Пример #22
0
//--------------------------------------------------------------
void testApp::keyReleased(int key){
    if(key=='f'){
        ofToggleFullscreen();
    }
    
}