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){
}
|