diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/testApp.cpp | 194 |
1 files changed, 194 insertions, 0 deletions
diff --git a/src/testApp.cpp b/src/testApp.cpp new file mode 100644 index 0000000..ea03c54 --- /dev/null +++ b/src/testApp.cpp @@ -0,0 +1,194 @@ +#include "testApp.h" + +/* +openBTS visualisation + +ALL units relative to screen size in H or W + +viewpoint dynamic? focus on 'interesting' events? + +FRAMING + +REPRESENTATION OF TIME + +LABELLING & INFO + +handset class +represents a handset + +how to deal with time/ range being limited +-exponential +-choose VP carefully- perspective +-just decide the longest time that it will be active + +scalability +-amount of text on screen + +icons +-worthwhile? + +call/sms -pointer from caller to callee + +position update + +function to interpolate position + +*/ + +void testApp::setup(){ + + printf("setup: %ix%i on screen %ix%i\n",ofGetWidth(),ofGetHeight(),ofGetScreenWidth(),ofGetScreenHeight()); + + int windowMode = ofGetWindowMode(); + if(windowMode == OF_FULLSCREEN){ + this->windowWidth = ofGetScreenWidth(); + this->windowHeight = ofGetScreenHeight(); + } + else if(windowMode == OF_WINDOW){ + this->windowWidth = ofGetWidth(); + this->windowHeight = ofGetHeight(); + } + + //Q Why is it that if you put a camera at (0,0,-100) looking at (0,0,0) and an object at (0,0,0) the camera isn't pointing at the object? + //A Because ortho is different + /* + camera.enableOrtho(); + camera.setPosition(-windowWidth/2,-windowHeight*4.1f,windowWidth); + //camera.lookAt(ofVec3f(-windowWidth/2,-windowHeight,0),ofVec3f(0, 1, 0)); + camera.rotate(70,1,0,0); + camera.cacheMatrices(); //stop error messages + */ + + ofSetFrameRate(60); + + ofSetCircleResolution(windowWidth); + ofEnableSmoothing(); + + camera.setPosition(0,windowHeight*10,windowHeight); + camera.lookAt(ofVec3f(0,0,-windowHeight*.5),ofVec3f(0, 0, 1)); + camera.setFov(6.5); + camera.cacheMatrices(); + + numLines=20; + + lines = new ofPoint[numLines]; + imeis = new string[numLines]; + for (int i=0;i<numLines;i++) { + float a=ofRandom(TWO_PI); + float r=ofRandom(windowWidth/2); + float l=ofRandom(windowHeight); + lines[i]=ofPoint(a,r,-l); //polar coords + for (int j=0;j<15;j++) { + imeis[i]+=(char)(ofRandom(10)+48); + } + } +<<<<<<< HEAD + + //bgimg.allocate( +======= +>>>>>>> 02635c7127b158a2821ce1f2e9fde20407d81037 + +} + + +//-------------------------------------------------------------- +void testApp::update(){ + + +} + +//-------------------------------------------------------------- +void testApp::draw(){ + + glDisable(GL_LIGHTING); + ofBackground(0,0,0); + + camera.begin(); + + //ofSphere(0,0,0,10); + + glDisable(GL_DEPTH_TEST); + glDisable(GL_BLEND); + + ofPushMatrix(); + ofRotate(ofGetElapsedTimef(),0,0,1); + + ofNoFill(); + + float rt=((ofGetElapsedTimef()*.25f)-floor(ofGetElapsedTimef()*.25f)); + for (float f=rt*(windowWidth/10);f<windowWidth*0.9;f+=windowWidth/10) { + float rf=sin((f/(windowWidth*0.9))*TWO_PI); + ofSetColor(0x7f*rf,0x7f*rf,0xff*rf); + ofCircle(0,0,0,f); + } + + + for (int i=0;i<numLines;i++) { + float rf=sin((lines[i].y/(windowWidth*0.9))*TWO_PI); + ofSetColor(0x8f*rf,0x8f*rf,0x8f*rf); + ofLine(cos(lines[i].x)*lines[i].y,sin(lines[i].x)*lines[i].y,0,cos(lines[i].x)*lines[i].y,sin(lines[i].x)*lines[i].y,lines[i].z); + } + + ofPopMatrix(); + camera.end(); + + for (int i=0;i<numLines;i++) { + float rf=sin((lines[i].y/(windowWidth*0.9))*TWO_PI); + ofSetColor(0x8f*rf,0x8f*rf,0x8f*rf); + ofVec3f p=camera.worldToScreen(ofVec3f(cos(lines[i].x)*lines[i].y,sin(lines[i].x)*lines[i].y,lines[i].z).rotated(ofGetElapsedTimef(),ofVec3f(0,0,1)),ofGetCurrentViewport()); + ofDrawBitmapString(imeis[i],p.x-20,p.y,p.z); + } + + ofSetHexColor(0xffffff); + char reportStr[1024]; + sprintf(reportStr, "fps: %f", ofGetFrameRate()); + ofDrawBitmapString(reportStr, 10, windowHeight-10); +} + +//-------------------------------------------------------------- +void testApp::keyPressed(int key){ + switch (key){ + case ' ': + break; + } +} + +//-------------------------------------------------------------- +void testApp::keyReleased(int 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){ + +} |
