彩音 - Adobe AIR - 研究室:XION -Adobe AIR-laboratory
ベクトルの加算減算 add()、subtract()、distance()、equals()

点と点の加算は add()、減算は subtract() で計算する。点と点の加算と減算は進む方向と大きさを表すベクトル計算で利用できる。以下の例では vector1 と vector2 をの値は変化しない。


var vector1:Point = new Point(5, 20);
var vector2:Point = new Point(0, 10);
var vector3:Point = new vector1.add(vectror2);
var vector4:Point = new vactor1.subtract(vector2);
trace (vector3, vector4);
// 出力:(x=5, y=30) (x=5, y=10)
trace (vector3.x);
// 出力:5
trace (vector3.y);
// 出力: 30

点と点の減算の結果は天童市の水平方向距離、垂直方向距離を示している。点と点の直線距離を求めたい場合は Point.distance() で計算出来る。計算結果は必ず0または正の値になる。つまり、2点を結ぶベクトルの大きさを示す。 Point.distance(pt1, pt2) と Point.distance(pt2, pt1) は同じ値になる。


var pt1:point = new Point(50, 100);
var pt2:point = new Point(200, 250);
var d:Number = Point.distance(pt1, pt2);
trace (d);
// 出力:212.13203435596427

Point.equals() は2点が等しいかどうかを調べる関数である。2点が等しいときに true、等しくないときに false となる。


var pt1:Point = new Point(50, 100);
var pt2:Point = new Point(200, 250);
if (pt1.equals(pt2)) {
trace("同じ位置");
} else {
trace("違う位置");
}

索引