diff options
| author | Tim Redfern <tim@getdrop.com> | 2017-08-31 16:27:24 +0100 |
|---|---|---|
| committer | Tim Redfern <tim@getdrop.com> | 2017-08-31 16:27:24 +0100 |
| commit | 4637492e2a31c78f9109941638171d05e4007c4c (patch) | |
| tree | c75d036019c64ab930792ce049b7ca20c5b69ab3 /gui/src | |
| parent | 809dbfb4e437c5c991d8ed4d9b8c097ac95abda9 (diff) | |
link rotation working
Diffstat (limited to 'gui/src')
| -rw-r--r-- | gui/src/chainImage.cpp | 17 |
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(); |
