Mattiが言ったことを2番目に言いますが、それはより速くすることができます-約48から64ビットのメモリのコストで(WHOAHとても!!! ...)
var dX:Number = x1 - x2;
var dY:Number = y1 - y2;
var dist:Number = Math.sqrt(dX * dX + dY * dY);
var animTime = dist / state.stageWidth;
そして、eb Devの要求に応じて、平方根にはピタゴラス定理の一部があることを説明します。
a^2 + b^2 = c^2
X軸とY軸の線は、直角三角形の2本の脚と見なすことができるため、斜辺は2つの特定の点(必要)間の距離になります。
まず、ポイント(x1-x2、y1-y2)を減算します。まだ2つのポイントがありますが、三角形の直角部分は0、0、つまりX軸とY軸が交差するポイントになります。これをピタゴラスの定理に適用できるようにするために、aとbのサイズを見てみましょう。脚の長さaは、0、0とポイント1の間の距離です。0、0を引くと、ポイント1だけが残ります。 -ただし、X軸上のどこかにあることがわかっています-したがって、そのYは0になります。長さは点1のX部分に等しいと言えます。
bレッグとポイント2についても同じことが言えます。ただし、今回はY部分だけを取得します。
そして、cを計算するために、最初にaとbの2乗を合計します(a ^ 2 + b ^ 2)。これでc^2ができたので、c-斜辺を取得するために、その平方根(つまり、AS3.0のMath.sqrt())を計算します。
cは距離です。
これがこれを説明することを願っています。