summaryrefslogtreecommitdiff
path: root/gaunt01/src/testApp.h
blob: 50187bd7928ab5f78f28640495be3adc13afbf57 (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
#pragma once

#include "ofMain.h"

#include "ofxOpenCv.h"
#include "ofxRay.h"

#include "ofxXmlSettings.h"
#include "ofxBlobsManager.h"

#include "trapdoor.h"
#include "bird.h"

//#define _USE_LIVE_VIDEO		// uncomment this to use a live camera
								// otherwise, we'll use a movie file

#define PLAY 0
#define CALIBRATE 1


class testApp : public ofBaseApp{

	public:
		void setup();
		void update();
		void draw();

		void keyPressed(int key);
		void keyReleased(int key);
		void mouseMoved(int x, int y );
		void mouseDragged(int x, int y, int button);
		void mousePressed(int x, int y, int button);
		void mouseReleased(int x, int y, int button);
		void windowResized(int w, int h);
		void dragEvent(ofDragInfo dragInfo);
		void gotMessage(ofMessage msg);

		int mode;

		//utility functions
		ofVec2f screen2plane(ofVec2f screenpos);
		ofVec3f plane2world(ofVec2f planepos);
		void updatePlane();
		bool rectsCross(ofRectangle rect1,ofRectangle rect2);

		ofxXmlSettings XML;
		void loadSettings(string filename);
		void saveSettings(string filename);

		bool useCamera;
		bool hasCamera;
		ofVideoGrabber 		vidGrabber;
		ofVideoPlayer 		vidPlayer;

		ofxCvColorImage		colorImg;
		ofxCvFloatImage		accumImg;

		ofxCvGrayscaleImage 	grayImage;
		ofxCvGrayscaleImage 	grayBg;
		ofxCvGrayscaleImage 	grayDiff;

		ofxCvContourFinder 	contourFinder;

		ofxBlobsManager		blobsManager;

		int 				threshold;
		bool				bLearnBakground;

		float cam_angle;

		ofCamera cam;

		ofRay ray;
		ofPlane plane;
		ofProjector projector;

		ofVec2f pos;

		vector<ofVec3f> players;
		trapdoor trapDoor;
		ofMesh ground;

		ofVec3f* testpts;

		ofTessellator tesselator;
		ofMesh player;
		ofPolyline playeroutline;

		bird Bird;

		bool drawStats;

};