From b9cd2bc3e15dac4096571069f6a3a0dd238513d9 Mon Sep 17 00:00:00 2001 From: Comment Date: Wed, 18 Dec 2013 01:59:44 +0000 Subject: sorted bad window placement once and for all --- liveengineUnmapped/src/main.cpp | 4 ++-- liveengineUnmapped/src/playlist.cpp | 3 ++- liveengineUnmapped/src/testApp.cpp | 12 ++++++++---- liveengineUnmapped/src/testApp.h | 1 + liveengineUnmapped/src/viewport.cpp | 31 +++++++++++++++++++++++-------- 5 files changed, 36 insertions(+), 15 deletions(-) (limited to 'liveengineUnmapped/src') diff --git a/liveengineUnmapped/src/main.cpp b/liveengineUnmapped/src/main.cpp index 615da21..cb2b5b2 100755 --- a/liveengineUnmapped/src/main.cpp +++ b/liveengineUnmapped/src/main.cpp @@ -7,8 +7,8 @@ int main( ){ ofAppGlutWindow window; - //ofSetupOpenGL(ofxFensterManager::get(),1200,300, OF_WINDOW); - ofSetupOpenGL(ofxFensterManager::get(),4080,768, OF_WINDOW); //2048,768 + ofSetupOpenGL(ofxFensterManager::get(),1440,270, OF_WINDOW); //480x270 + //ofSetupOpenGL(ofxFensterManager::get(),4080,768, OF_WINDOW); //2048,768 //ofSetupOpenGL(&window, 1024,768, OF_WINDOW); // <-------- setup the GL context //ofSetupOpenGL(&window, 1024,768, OF_WINDOW); diff --git a/liveengineUnmapped/src/playlist.cpp b/liveengineUnmapped/src/playlist.cpp index 683cd3c..61987d1 100755 --- a/liveengineUnmapped/src/playlist.cpp +++ b/liveengineUnmapped/src/playlist.cpp @@ -14,7 +14,7 @@ void playlist::load(string _name){ if( !XML.loadFile(_name) ){ printf("unable to load %s check data/ folder\n",_name.c_str()); }else { - printf("starting loader thread\n"); + //printf("starting loader thread\n"); loadimg(); //how to do this from the worker thread??? startThread(false, false); //blocking, verbose } @@ -27,6 +27,7 @@ void playlist::threadedFunction(){ if( lock() ){ loadLayers(); unlock(); + printf("unlocking thread\n"); } } diff --git a/liveengineUnmapped/src/testApp.cpp b/liveengineUnmapped/src/testApp.cpp index 266ebb6..91359f8 100755 --- a/liveengineUnmapped/src/testApp.cpp +++ b/liveengineUnmapped/src/testApp.cpp @@ -74,6 +74,8 @@ void testApp::setup(){ } } + printf("screen %ix%i\n",ofGetHeight(),ofGetWidth()); + midiIn.listPorts(); midiIn.openPort(midiPort); @@ -139,12 +141,13 @@ void testApp::setup(){ win->addListener(prevWin); prevWin->setup(); prevWin->setParent(this); - prevWin->setBuffer(&viewports[0]->rb2); + prevWin->setBuffer(&viewports[2]->rb2); fullscreenoutput=false; guiWin=new guiWindow(); gui.setup("","panel.xml",0,0); + gui.add(reverse.setup("reverse", false)); gui.add(reversemain.setup("reverse main", false)); gui.add(controlColours.setup("control colours", false)); gui.add(noteRandomiseColours.setup("randomise note colours", false)); @@ -213,7 +216,8 @@ void testApp::draw(){ //vp2.draw(lambda,controllers,reversemain?-xshift:xshift,yshift,list,transparentBlack,note,mode,controller_colours,controlColours,reversemain?1.0f/scale:scale,reversemain?1.0f/fscale:fscale,noteRandomiseColours?colShift:0.0f); for (int i=0;idraw(lambda,controllers,even&&reversemain?-xshift:xshift,yshift,list,transparentBlack,note,mode,controller_colours,controlColours,even&&reversemain?1.0f/(scale+os):scale+os,even&&reversemain?1.0f/fscale:fscale,noteRandomiseColours?colShift:0.0f,fadeBackground); + bool do_reverse=reverse?!(even&&reversemain):even&&reversemain; + viewports[i]->draw(lambda,controllers,do_reverse?-xshift:xshift,yshift,list,transparentBlack,note,mode,controller_colours,controlColours,do_reverse?1.0f/(scale+os):scale+os,do_reverse?1.0f/fscale:fscale,noteRandomiseColours?colShift:0.0f,fadeBackground); } ofSetColor(255,255,255); @@ -531,12 +535,12 @@ void testApp::nmidiMessage(int event,int data1, int data2) { note=data1; lastnoteTime=ofGetElapsedTimef(); - if (list.layers.size()&&list.lock()) { //if playlist is loaded + if (list.lock()&&list.layers.size()) { //if playlist is loaded map::iterator itr; //for(itr = list.layers.begin(); itr != list.layers.end(); ++itr){ // list.layers[itr->first]->setNote(note); //} - list.layers[note]->setNote(note); + if (list.layers.find(note)!=list.layers.end()) list.layers[note]->setNote(note); list.unlock(); } if (noteRandomiseColours) { diff --git a/liveengineUnmapped/src/testApp.h b/liveengineUnmapped/src/testApp.h index 4f75656..1e56c33 100755 --- a/liveengineUnmapped/src/testApp.h +++ b/liveengineUnmapped/src/testApp.h @@ -169,6 +169,7 @@ class testApp : public ofxFensterListener, public ofxMidiListener{ ofxPanel gui; + ofxToggle reverse; ofxToggle reversemain; ofxToggle controlColours; ofxToggle noteRandomiseColours; diff --git a/liveengineUnmapped/src/viewport.cpp b/liveengineUnmapped/src/viewport.cpp index cc2cc25..a169146 100755 --- a/liveengineUnmapped/src/viewport.cpp +++ b/liveengineUnmapped/src/viewport.cpp @@ -26,7 +26,7 @@ void viewport::setup(int _w,int _h,int _x,int _y,float _r,int _ox,int _oy) { void viewport::draw(float a,unsigned char* controllers,int xshift,int yshift,playlist &list,bool transparentBlack,int note,int mode,ofColor* controller_colours,bool controlColours,float scale,float fscale,float colShift,int fadeBG){ - + //http://forum.xfce.org/viewtopic.php?id=6580 // test screen shape /* @@ -37,6 +37,8 @@ void viewport::draw(float a,unsigned char* controllers,int xshift,int yshift,pla ofRect(0,h/2,w/2,h/2); ofRect(w/2,0,w/2,h/2); */ + + ofPushMatrix(); rb1.begin(); @@ -57,7 +59,7 @@ void viewport::draw(float a,unsigned char* controllers,int xshift,int yshift,pla //fadeout part ofEnableAlphaBlending(); ofSetColor(0,0,0,fadeBG); - ofRect(0,0,ofGetWidth(),ofGetHeight()); + ofRect(0,0,w,h); ofDisableAlphaBlending(); } @@ -92,26 +94,39 @@ void viewport::draw(float a,unsigned char* controllers,int xshift,int yshift,pla } } + ofPopStyle(); + rb1.end(); rb2.begin(); ofSetColor(255,255,255); rb1.draw(0,0); rb2.end(); + + ofPopMatrix(); ofPushMatrix(); - ofTranslate(x+(w/2),y+(h/2)); + //ofTranslate(x+(w/2),y+(h/2)); this was the one that was working + //ofTranslate(abs(sin(ofDegToRad(r))*h/2)+abs(cos(ofDegToRad(r))*w/2),abs(sin(ofDegToRad(r))*w/2)+abs(cos(ofDegToRad(r))*h/2)); + ofTranslate(x,y); + + ofTranslate(((w/2)*abs(cos(ofDegToRad(r))))+((h/2)*abs(sin(ofDegToRad(r)))), + ((w/2)*abs(sin(ofDegToRad(r))))+((h/2)*abs(cos(ofDegToRad(r))))); + ofRotate(r); + ofTranslate(-w/2,-h/2); //ofTranslate(-abs(sin(ofDegToRad(r))*h/2)-abs(cos(ofDegToRad(r))*w/2),-abs(sin(ofDegToRad(r))*w/2)-abs(cos(ofDegToRad(r))*h/2)); - ofTranslate(ox,oy); - + //ofTranslate(ox,oy); get rid of this and get the rotation right + ofDisableAlphaBlending(); - rb2.draw(0,0); + rb2.draw(0,0); + + ofPopMatrix(); - ofPopStyle(); + + - ofPopMatrix(); } -- cgit v1.2.3