点を扱う「Pointクラス」Pointクラスは点の座標を値として扱うことが可能になる
var オブジェクト名:Point = new Point( x座標 、 y座標 );
例 新しいオブジェクトpoint01をPointクラスとしてx=50, y=100の点の値を格納
var point01:Point = new Point(50,100);
trace(point01);
//出力表示 (x=50,y=100)
Pointクラスプロパティ「length」原点(0,0)から点までの長さを簡単に得られる
Pointクラスオブジェクト.length;
例 原点からPointクラスオブジェクトまでの長さ
var point01:Point = new Point(50,100);
trace(point01.length);
//出力表示 111.80339887498948
Pointクラスメソッド「add」、「subtract」Pointクラスの値を加算、減算できる
加算
Pointクラスオブジェクト.add(加算する別のPointクラスオブジェクト);
減算
Pointクラスオブジェクト.subtract(減算する別のPointクラスオブジェクト);
例
var vec1:Point = new Point(5,20);
var vec2:Point = new Point(0,10);
var vec3:Point = vec1.add(vec2);
var vec4:Point = vec1.subtract(vec2);
trace("vec1は"+vec1);
trace("vec2は"+vec2);
trace("vec3は1に2を加算した為"+vec3);
trace("vec4は1に2を減算した為"+vec4);
trace(vec3.x);
trace(vec4.y);
出力表示
vec1は(x=5, y=20)
vec2は(x=0, y=10)
vec3は1に2を加算した為(x=5, y=30)
vec4は1に2を減算した為(x=5, y=10)
5
10
Pointクラスメソッド「distance」点と点の直線距離を求められる(2点間のベクトルの大きさを示す)
※計算で得られる値は0か正の値になる
Point.distance( Pointクラスオブジェクト-その1 、 Pointクラスオブジェクト-その2 );
例 Pointクラスオブジェクトのpt1とpt2の直線距離を求める
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点の値が等しいかどうかを調べる
等しい場合はtrue、等しくない場合falseとして値を得る
Pointクラスオブジェクト.equals(調べるPointクラスオブジェクト);
例 pt1とpt2の値が等しいかどうかを調べる
var pt1:Point = new Point(50,100);
var pt2:Point = new Point(200,250);
var d:Boolean = pt1.equals(pt2);
trace(d);
出力表示 false
Pointクラスメソッド「interpolate」2点の間を計算して点を出す
Point.interpolate(点1,点2,補間レベル);
補間レベルは0~1で調整する
補間レベルの値が0に近づけば点1に、1に近づけば点2に計算結果が近くなる
例 pt1とpt2の値をpt3に補間レベル0.5(半分)で代入
var pt1:Point = new Point(0,100);
var pt2:Point = new Point(550,100);
var pt3:Point = Point.interpolate(pt1,pt2,0.5);
trace(pt3);
出力表示 (x=275,y=100);