From bcc4abca24d04b29a929ed063f18a080041fe0be Mon Sep 17 00:00:00 2001 From: Tim Redfern Date: Sun, 29 Oct 2017 11:01:41 +0000 Subject: loading fixed --- gui/src/chainImage.cpp | 7 ++++++- gui/src/chainImage.h | 5 +++++ gui/src/chainImageSet.cpp | 19 ++++++++++++++----- gui/src/chainImageSet.h | 2 +- gui/src/main.cpp | 2 +- gui/src/ofApp.cpp | 4 ++-- 6 files changed, 29 insertions(+), 10 deletions(-) (limited to 'gui') diff --git a/gui/src/chainImage.cpp b/gui/src/chainImage.cpp index 3c5f408..f712e71 100644 --- a/gui/src/chainImage.cpp +++ b/gui/src/chainImage.cpp @@ -8,8 +8,10 @@ float distance(ofPoint p1,ofPoint p2){ } void chainImage::init(ofPoint _linkPos,float _linkScale,float _linkRot){ +#ifdef GPU_ALGORITHM shader.load("shader"); - +#endif //GPU_ALGORITHM + linkPos=_linkPos; linkScale=_linkScale; linkRot=_linkRot; @@ -233,6 +235,7 @@ void chainImage::drawChain(float fadeIn,bool additive,float intensity,float zoom //add a scale factor to the outgoing image that builds up over the transition + glPushMatrix(); //if this is linear we see the jump from the unaccelerated phase //float zoomFactor=((zoomMultiplier-1.0f)*transition)+1.0f; @@ -242,6 +245,7 @@ void chainImage::drawChain(float fadeIn,bool additive,float intensity,float zoom glScalef(zoomFactor,zoomFactor,zoomFactor); + //ofSetColor(colour); draw(0,0,getWidth(),getHeight()); glPopMatrix(); @@ -259,6 +263,7 @@ void chainImage::drawChain(float fadeIn,bool additive,float intensity,float zoom link->setAnchorPoint(link->getWidth()/2,link->getHeight()/2); + //ofSetColor(link->colour); link->draw(0,0,link->getWidth(),link->getHeight()); glDisable(GL_BLEND); diff --git a/gui/src/chainImage.h b/gui/src/chainImage.h index f391db8..4e3d58e 100644 --- a/gui/src/chainImage.h +++ b/gui/src/chainImage.h @@ -14,6 +14,8 @@ #define SWITCH_FORWARD 1 #define SWITCH_REVERSE 2 +//#define GPU_ALGORITHM + class chainImage : public ofImage{ //todo: threaded image loader @@ -22,6 +24,7 @@ class chainImage : public ofImage{ link=NULL; ofImage(); isLoaded=false; + colour=ofColor(255,255,255); } void init(ofPoint _linkPos,float _linkScale,float _linkRot); @@ -73,6 +76,8 @@ class chainImage : public ofImage{ float linkRot; float dragRot; + ofColor colour; + std::string filename; float transition; diff --git a/gui/src/chainImageSet.cpp b/gui/src/chainImageSet.cpp index dd43fec..f27cd73 100644 --- a/gui/src/chainImageSet.cpp +++ b/gui/src/chainImageSet.cpp @@ -207,8 +207,8 @@ void chainImageSet::drawGui(int x,int y,bool is_selected){ } -bool chainImageSet::add(std::string filename,glm::vec2 pos){ - printf("Dropped file: %s at %f,%f \n",filename.c_str(),pos.x,pos.y); +bool chainImageSet::add(std::string filename,ofPoint pos,float ratio,float rotation){ + //printf("Dropped file: %s at %f,%f \n",filename.c_str(),pos.x,pos.y); /* attempt to add file to chain. find if file exists in data folder @@ -218,9 +218,9 @@ save dragdrop pos in loadingImages and attempt to insert in the chain */ auto image=std::make_unique(); - image->init(ofPoint(0,0), - 0.3, //currentDefaultImageRatio, - 0 //default rotation + image->init(pos, + ratio, + rotation ); printf("Loading file: %s linkscale %f\n", @@ -449,11 +449,19 @@ bool chainImageSet::loadJson(std::string _filename){ images.clear(); for (int i=0;i(); if (image->fromJson(json["images"][i])){ images.push_back(std::move(image)); } + */ + add(json["images"][i]["filename"].asString(), + ofPoint(json["images"][i]["linkPos"][0].asDouble(),json["images"][i]["linkPos"][1].asDouble()), + json["images"][i]["linkScale"].asDouble(), + json["images"][i]["linkRot"].asDouble() + ); } + /* for (auto ii=images.begin(); ii != images.end(); ii++){ auto li=ii; li++; @@ -468,6 +476,7 @@ bool chainImageSet::loadJson(std::string _filename){ (*currentImage)->start(); filename=_filename; return true; + */ } diff --git a/gui/src/chainImageSet.h b/gui/src/chainImageSet.h index ae70561..91ac531 100644 --- a/gui/src/chainImageSet.h +++ b/gui/src/chainImageSet.h @@ -28,7 +28,7 @@ class chainImageSet{ void drawOutput(); void drawGpu(); void updateOutput(); - bool add(std::string filename,glm::vec2 pos); + bool add(std::string filename,ofPoint pos=ofPoint(0,0),float ratio=0.3,float rotation=0.0); void keyPressed(ofKeyEventArgs &keyargs); void mouseDragged(int x, int y, int button); void mousePressed(int x, int y, int button); diff --git a/gui/src/main.cpp b/gui/src/main.cpp index d58e5e2..391b99f 100644 --- a/gui/src/main.cpp +++ b/gui/src/main.cpp @@ -1,7 +1,7 @@ #include "ofMain.h" #include "ofApp.h" -//#define GPU_ALGORITHM + //======================================================================== int main(int argc, char *argv[]){ diff --git a/gui/src/ofApp.cpp b/gui/src/ofApp.cpp index f2fb8fb..a89a893 100644 --- a/gui/src/ofApp.cpp +++ b/gui/src/ofApp.cpp @@ -331,9 +331,9 @@ void ofApp::dragEvent(ofDragInfo dragInfo){ filenames=filenames+*f; if (dragInfo.position.y<200){ - sets[0].add(*f,dragInfo.position); + sets[0].add(*f); //,dragInfo.position); } - else sets[1].add(*f,dragInfo.position); + else sets[1].add(*f); //,dragInfo.position); } -- cgit v1.2.3