summaryrefslogtreecommitdiff
path: root/src/testApp.cpp
blob: 42f705504fb5244697e68d02340714192d5943d6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
#include "testApp.h"

//--------------------------------------------------------------
void testApp::setup(){
	ofBackground(0,0,0);

	
	///ofSetVerticalSync(true);

    //some model / light stuff
    glEnable (GL_DEPTH_TEST);
    glShadeModel (GL_SMOOTH);
    glColorMaterial (GL_FRONT_AND_BACK, GL_DIFFUSE);
    glEnable (GL_COLOR_MATERIAL);
	 
    //load the bottle model - the 3ds and the texture file need to be in the same folder
    bottle.loadModel("bottle.3DS", 1);
    bottle.setRotation(0, 180, 1, 0, 0);
    bottle.setPosition(0, 112, 0);

    //ofDisableArbTex();

   texture.loadMovie("gradblend01.mov");
   texture.play();

   mode=CALIBRATE;

   views=new viewpoint[1];

   //todo: read this from xml
   views[0].setup(ofGetWidth(),ofGetHeight(),0,0);
   activeView=0;
}

//--------------------------------------------------------------
void testApp::update(){
    texture.idleMovie();
}

//--------------------------------------------------------------
void testApp::draw(){

	views[0].setLight();
		views[0].begin();
        ofSetColor(255, 255, 255, 255);
        ofFill();
        switch(mode) {
            case CALIBRATE:
                drawBoard(0,225,0);
                bottle.draw();
                break;
            case DISPLAY:
                bindTexture(texture);
                bottle.draw();
                unbindTexture(texture);
                break;
			case NOTHING:
                bindTexture(texture);
				glPushMatrix();
                drawBox(50.0f);
                unbindTexture(texture);
				glPopMatrix();
                break;
        }
    views[0].end();
    ofSetHexColor(0xFFFFFF);
    ofDrawBitmapString("fps: "+ofToString(ofGetFrameRate(), 2), 10, 15);
}

//--------------------------------------------------------------
void testApp::keyPressed(int key){
    views[activeView].keyPressed(key);
    switch (key) {
       case '1':
            mode=CALIBRATE;
            break;
       case '2':
            mode=DISPLAY;
            break;
       case '3':
            mode=NOTHING;
            break;
    }

}

//--------------------------------------------------------------
void testApp::keyReleased(int key){
    views[activeView].keyReleased(key);
}

//--------------------------------------------------------------
void testApp::mouseMoved(int x, int y ){

}

//--------------------------------------------------------------
void testApp::mouseDragged(int x, int y, int button){

}

//--------------------------------------------------------------
void testApp::mousePressed(int x, int y, int button){

}

//--------------------------------------------------------------
void testApp::mouseReleased(int x, int y, int button){

}

//--------------------------------------------------------------
void testApp::windowResized(int w, int h){

}

//--------------------------------------------------------------
void testApp::gotMessage(ofMessage msg){

}

//--------------------------------------------------------------
void testApp::dragEvent(ofDragInfo dragInfo){

}