図のように、動きを実装したいと思っています。
そして行いたいことは、
「通過点(mx,my)の座標を保存し、そこを軸に動くアニメーションです」
です。
そこで、
Processing
v = (new PVector(end_x-start_x,end_y-start_y)).normalize(); rad =v.heading(); if((video.duration()/5) < time && time < (video.duration()*3/5)){ if(i==1){ mx=ex; my=ey; i++; } pushMatrix(); translate(mx,my); rotate(rad); rect(-t,0,30,30); rect(-t,-t,30,30); rect(-t,-t,30,30); t=t+30 popMatrix(); } if((video.duration()*2/5) < time && time < (video.duration()*4/5)){ if(i2==1){ mx2=ex; my2=ey; i2++; } pushMatrix(); translate(mx2,my2); rotate(rad); rect(-t,0,30,30); rect(-t,-t,30,30); rect(-t,-t,30,30); t=t+30 popMatrix(); }
draw関数の一部です。
これで図形がうまく思うところに描画されないのは、ifの時間の範囲が被っているために、
translateで原点が(mx,my)の時に次の(mx2,my2)に(ex,ey)が代入されるなどして、座標の位置関係がよくわからないことになってしまっているのでしょうか。
まだ回答がついていません
会員登録して回答してみよう