#pragma once #include "ofMain.h" #include "ofxOpenCv.h" #include "ofxKinect.h" #define MIN_TILE_SIZE 4 //has to be a divisor of 320 and 240 as the tiles are centred #define MAX_TILE_SIZE 32 //has to be a power of 2 * MIN_TILE_SIZE class offsetCvColorImage : public ofxCvColorImage { public: void extend( int w, int h ) { //cv::copyMakeBorder(cvImage,cvImage,(h-getHeight())/2,(h-getHeight())/2,(w-getWidth())/2,(w-getWidth())/2,cv::BORDER_REPLICATE); } }; class offsetCvGrayscaleImage : public ofxCvGrayscaleImage { public: void extend( int w, int h ) { //cv::copyMakeBorder(cvImage,cvImage,(h-getHeight())/2,(h-getHeight())/2,(w-getWidth())/2,(w-getWidth())/2,cv::BORDER_REPLICATE); } }; class ofApp : public ofBaseApp { public: void setup(); void update(); void draw(); void exit(); void keyPressed(int key); 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); ofxKinect kinect; offsetCvColorImage colourImage; offsetCvGrayscaleImage depthImage; vector colourTiles; vector depthTiles; vector > numTiles; int farThreshold; int angle; int extend_w,extend_h; };