blob: e3ad0802bd4f7e99976a0fbdc5990cb0710d2e24 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#include "Tag.h"
void Billboard::draw(float x, float y, float scale){
img.draw(x-(anchorPoint.x*scale),y-(anchorPoint.y*scale),img.getWidth()*scale,img.getHeight()*scale);
}
void Tag::play(){
isPlaying=true;
startTime=ofGetElapsedTimeMillis();
}
void Tag::draw(float x, float y, float scale){
float time=((float)ofGetElapsedTimeMillis()-startTime)/duration;
float yshift=0.0f;
if (time<0.4) yshift=pow((time/0.4),0.7)-1.0;
else if (time>0.75) yshift=-pow((time-0.75)/0.25,0.75);
img.draw(x-(anchorPoint.x*scale),y-(anchorPoint.y*scale)+(yshift*img.getHeight()*scale),img.getWidth()*scale,img.getHeight()*scale);
if ((ofGetElapsedTimeMillis()-startTime)>duration) isPlaying=false;
}
|