summaryrefslogtreecommitdiff
path: root/gui/src
diff options
context:
space:
mode:
authorTim Redfern <tim@getdrop.com>2017-08-31 16:27:24 +0100
committerTim Redfern <tim@getdrop.com>2017-08-31 16:27:24 +0100
commit4637492e2a31c78f9109941638171d05e4007c4c (patch)
treec75d036019c64ab930792ce049b7ca20c5b69ab3 /gui/src
parent809dbfb4e437c5c991d8ed4d9b8c097ac95abda9 (diff)
link rotation working
Diffstat (limited to 'gui/src')
-rw-r--r--gui/src/chainImage.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/gui/src/chainImage.cpp b/gui/src/chainImage.cpp
index 83363db..e2ee598 100644
--- a/gui/src/chainImage.cpp
+++ b/gui/src/chainImage.cpp
@@ -20,13 +20,20 @@ void chainImage::start(){
setUseTexture(true);
scale=linkScale;
+ //where there is rotation of the link, the path needs to be rotated?
+
path.clear();
path.addVertex(linkPos);
//path.addVertex(linkPos+(link->linkPos*linkScale));
+
+ ofPoint rotated_destination=ofPoint(
+ (link->linkPos.x*cos(linkRot*(PI/180)))-(link->linkPos.y*sin(linkRot*(PI/180))),
+ (link->linkPos.y*cos(linkRot*(PI/180)))+(link->linkPos.x*sin(linkRot*(PI/180)))
+ );
- ofPoint destination=linkPos+(link->linkPos*linkScale);
- ofPoint previous=linkPos+(link->linkPos*linkScale*(1.0f-BEZIER_IN));
+ ofPoint destination=linkPos+(rotated_destination*linkScale);
+ ofPoint previous=linkPos+(rotated_destination*linkScale*(1.0f-BEZIER_IN));
path.bezierTo(
linkPos.x*(1.0f+BEZIER_OUT),linkPos.y*(1.0f+BEZIER_OUT),
@@ -85,7 +92,7 @@ float chainImage::getRotation(){
//when we switch image, link->linkRot becomes linkRot
//linkRot is no longer seen
- return linkRot+(transition*link->linkRot);
+ return linkRot+(transition*link->linkRot); //linkRot+
};
void chainImage::makeThumbnail(){
thumbnail=(const ofImage)*this; //copy the ofImage itself
@@ -108,6 +115,10 @@ void chainImage::makeThumbnail(){
void chainImage::drawChain(float fadeIn){
+ //printf("Drawing chain transition: %f\n",transition);
+ //we are correctly geting to 1
+ //the transformw don't quite add up?
+
glPushMatrix();
ofDisableAlphaBlending();