算数メモ

毎度公式をググるのはいい加減めんどいのでここにまとめてく。
(これらを覚えられるほどの知能はない)

距離と角度からx、y方向の距離を求める

var dx:Number = Math.cos(degree * Math.PI / 180 ) * distance;
var dy:Number = Math.sin(degree * Math.PI / 180 ) * distance;

03bc502b-41cb-426a-8cea-d28c2a500107

2点間の角度

var radian:Number = Math.atan2(targetY - currentY, targetX - currentX);
var degree:Number = radian * 180 / Math.PI;

8fc882bd-ba74-4651-b7c0-2edf61e9d023

2点間の距離

var dx:Number = targetX - currentX;
var dy:Number = targetY - currentY;
var distance:Number = Math.sqrt(dx * dx + dy * dy);

bcaf9577-e04f-46bd-ae87-3b5cb82087c1

角度からラジアン

var radian:Number =  degree * Math.PI / 180;

ラジアンから角度

var degree:Number = radian * 180 / Math.PI;

バネ運動

var vx:Number = ( currentX + ((targetX - currentX) * spring) * friction;
var vy:Number = ( currentY + ((targetY - currentY) * spring) * friction;
currentX += vx;
currentY += vy;